使用Python将数字转换为相应的字母

2024-04-29 10:20:29 发布

您现在位置:Python中文网/ 问答频道 /正文

我想知道是否有可能把数字转换成相应的字母值。所以

1 -> a
2 -> b

我计划制作一个程序,列出用户指定长度内所有字母组合。

看,我知道如何建立程序的其余部分,除了这个! 任何帮助都很好。


Tags: 用户程序字母数字计划字母组合
3条回答

大字:

chr(ord('@')+number)

1->;A

2->;B页

。。。

小写字母:

chr(ord('`')+number)

1->;a

2->;b页

。。。

字典怎么样?

>>> import string
>>> num2alpha = dict(zip(range(1, 27), string.ascii_lowercase))
>>> num2alpha[2]
b
>>> num2alpha[25]
y

但不要超过26岁:

>>> num2alpha[27]
KeyError: 27

但是,如果您要查找给定长度的所有字母组合:

>>> import string
>>> from itertools import combinations_with_replacement as cwr
>>> alphabet = string.ascii_lowercase
>>> length = 2
>>> ["".join(comb) for comb in cwr(alphabet, length)]
['aa', 'ab', ..., 'zz']
import string
for x, y in zip(range(1, 27), string.ascii_lowercase):
    print(x, y)

或者

import string
for x, y in enumerate(string.ascii_lowercase, 1):
    print(x, y)

或者

for x, y in ((x + 1, chr(ord('a') + x)) for x in range(26)):
    print(x, y)

上述所有解决方案都从英文字母表中输出小写字母及其位置:

1 a
...
26 z

你可以创建一个字典,方便地根据字母(值)的位置(键)访问它们。例如:

import string
d = dict(enumerate(string.ascii_lowercase, 1))
print(d[3]) # c

相关问题 更多 >