我正在寻找在 python 中创建一个字典 它的键是字符 '0' 到 '9' ,之后是从 'a' 到 'z' 的键, 他们的 id 应该是一个从 0 到 36 的计数器
像这样:
dict = {'0':0, '1':1, '2':2, ....., '9':9, 'a':10, .... , 'x' :33, 'y':34, 'z':35}
我设法写了这个
dict = {}
for i in range(10):
dict[str(i)] = i
ord_a = ord('a')
for i in range(0,26):
dict[chr(ord_a + i)] = i+10
你能帮我更好地实现它吗?
还有一件事,print(dict)
返回一个未排序的对象:
{'d': 13, 'e': 14, 'f': 15, 'g': 16, 'r': 27, 'a': 10, 'b': 11,
'c': 12, 'l': 21, 'm': 22, 'n': 23, 'o': 24, 'h': 17, 'i': 18,
'j': 19, 'k': 20, '4': 4, '5': 5, '6': 6, '7': 7, '0': 0, '1': 1,
'2': 2, '3': 3, '8': 8, '9': 9, 'z': 35, 't': 29, 'u': 30,
'x': 33, 'v': 31, 'y': 34, 'w': 32, 's': 28, 'p': 25, 'q': 26}
这是为什么呢?我实际上对它进行了初始化,不是吗?
最佳答案
import string
keys = string.digits+string.ascii_lowercase
values = range(len(keys))
d = dict(zip(keys,values))
dicts
有无序键。要订购 key ,请使用 collections.OrderedDict . (此外,永远不要将变量命名为 dict
或 list
等,因为这会阻止您轻松访问同名的 Python 内置函数。内置函数是很有用,正如您在上面看到的那样。)
关于python - 初始化由字符和数字组成的字典的最优雅方法是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20140420/