0

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

如何以简洁的方式创建以字母为键的字典?

怎么能在这里包含空格、引号、点、双引号?谢谢

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

2 回答 2

3

通过这种方式,您可以创建一个 dict,其中 ascii 字符作为键,相应的数字作为值:

aDict = { chr(x):x for x in range(129) }
于 2013-02-17T00:19:48.753 回答
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)}
于 2013-02-17T00:20:58.637 回答