在python中为字符A-Z赋值

时间:2017-08-31 15:31:15

标签: python ascii

我是noobie。我正在尝试将值从A分配给Z. 这很长。

   A= 97
   B= 98
   C= 99
   D= 100
   ...
   Z= 122

最好的方法是什么?

2 个答案:

答案 0 :(得分:2)

你可以这样做:

import string

alpha_dict = {k: ord(k) for k in string.ascii_lowercase}
print(alpha_dict)  # {'r': 114, 'l': 108, 'z': 122, ...}

访问您的变量,例如alpha_dict['a']

请注意,示例中的值对应于小写字母,但您使用大写命名变量。如果你真的想要大写,而不是循环ascii_lowercase循环ascii_uppercase

答案 1 :(得分:0)

您可以使用ord('letter')代替对每个字母进行硬编码。例如,ord('a')将返回数字97,代表ASCII中的字母a

编辑:

我使用Ev. Kounis的代码来制作字典,因为我错了。如果有任何问题我可以删除它。

import string

alpha_dict = {k: ord(k) for k in string.ascii_uppercase}

'''Iterates in keys of alpha_dict, turning the key to lowercase, removes 
 the old key and replaces it with the new lowercase one'''
for key in alpha_dict:
    lower = key.lower()
    alpha_dict[lower] = alpha_dict.pop(key)

print(alpha_dict)