python - 在递增另一个变量的同时遍历列表

标签 python loops dictionary expression

我正在尝试在 python 中迭代一个列表。该列表是内置的,被称为 stringascii_lowercase。我正在尝试创建一个 dictionary 来保存所有英文字母,每当要将字母表添加到字典中时,我也想为该字母表分配一个特定的数字。

最近,我尝试这样做:

alphabets = {for (x,j) in [(x,j) for x in ascii_lowercase for j in range(len(ascii_lowercase))]}

但是没有运气。任何人都可以帮助我为这种类型的事物创建一个表达式吗?

为了更清楚它,这就是我想要的:

{'a':1, 'b':2, ... }

最佳答案

from string import ascii_lowercase
alphabets = dict(zip(ascii_lowercase, range(1,27)))

输出:

>>> alphabets
{'f': 6, 'g': 7, 'd': 4, 'e': 5, 'b': 2, 'c': 3, 'a': 1, 'n': 14, 'o': 15, 'l': 12, 'm': 13, 'j': 10, 'k': 11, 'h': 8, 'i': 9, 'v': 22, 'w': 23, 't': 20, 'u': 21, 'r': 18, 's': 19, 'p': 16, 'q': 17, 'z': 26, 'x': 24, 'y': 25}

其他方法:

{char:i for char,i in zip(ascii_lowercase, range(1,27))}

answer = {}
for i,char in enumerate(ascii_lowercase):
    answer[char] = i+1

dict((char,i) for i,char in enumerate(ascii_lowercase, 1))

关于python - 在递增另一个变量的同时遍历列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21314143/

相关文章:

Java Map : Using value object's attribute as key, 坏习惯?

c++ - 错误打印 map 元素值

python - 无法在 Django 模板 html 中使用过滤器

python - BlockingIOError 异常被忽略;我应该担心吗?

r - 查找一个字符串是否包含在 R 中的另一个字符串中

python - 如何重新配置​​该字典以更改其键

python - paramiko-python exec_command() 无法在 channel 类型元组 :( 上工作

python - python Elasticsearch难以从SQL转换为请求的ES格式

java - 使用循环在java中制作基本乘法表

java - 如何确保在 mockito 中只调用一次模拟对象