用字母而不是数字进行枚举

python中有没有一种方法可以执行与字母相同的功能enumerate()?


例如


x = ['block', 'cheese']


for i, word in enumerate(x):

    print((i, word))

会产生


(1, 'block')

(2, 'cheese')

有没有直接的方法来产生这个?


('A', 'block')

('B', 'cheese')


白衣染霜花
浏览 132回答 3
3回答

慕码人8056858

对于最多 26 个元素,您可以执行以下操作:import stringx = ['block', 'cheese']for i, word in zip(string.ascii_uppercase, x):    print((i, word))输出('A', 'block')('B', 'cheese')

拉风的咖菲猫

不,这是不可能的。但也许string.ascii_lowercase可以帮助你import stringstring.ascii_lowercase>>>>> 'abcdefghijklmnopqrstuvwxyz'string.ascii_lowercase[0]>>>>> a

holdtom

Excel您可以使用生成器相对容易地模仿的行为:def mimic_excel():    for i in range(0, 26):        yield chr(i + 65)    i, j = [0, 0]    for j in range(0, 26):        for i in range(0, 26):            yield "{}{}".format(chr(j + 65), chr(i + 65))for letter in mimic_excel():    print(letter)这产生ABC...ZXZYZZ
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python