如何用空格,引号,点,双引号等创建一个dict

时间:2013-02-17 00:13:44

标签: python dictionary converter

我在这里看到这个问题aDict包括字母,但我怎么能包括空格,引号,点,双引号呢?

How to create a dict with letters as keys in a concise way?

如何在这里包括空格,引号,点,双引号?感谢

import string
aDict = dict(zip(string.ascii_lowercase, range(1, 27)))

2 个答案:

答案 0 :(得分:3)

通过这种方式,您可以创建一个带有ascii字符作为键和相应数字作为值的字典:

aDict = { chr(x):x for x in range(129) }

答案 1 :(得分:1)

您可以从空格字符开始到最后(但不包括)\x7f字符来获取所有可见字符。

{v: k for k, v in enumerate((chr(x) for x in range(ord(' '), ord('\x7f'))), 1)}

如果您想加入\t\n\r,您可以将它们链接起来。

import itertools

{v: k for k, v in
 enumerate(itertools.chain(('\t', '\n', '\r'),
                           (chr(x) for x in range(ord(' '), ord('\x7f')))),
           1)}