python中有没有一种方法可以执行与enumerate()
相同的功能,但使用字母?
例如
x = ['block', 'cheese']
for i, word in enumerate(x):
print((i, word))
将产生
(1, 'block')
(2, 'cheese')
有没有一种简单的方法来制作这个?
('A', 'block')
('B', 'cheese')
对于多达26个元素,您可以执行以下操作:
import string
x = ['block', 'cheese']
for i, word in zip(string.ascii_uppercase, x):
print((i, word))
输出
('A', 'block')
('B', 'cheese')
不,这是不可能的。
但也许string.ascii_lowercase
可以帮助你
import string
string.ascii_lowercase
>>>>> 'abcdefghijklmnopqrstuvwxyz'
string.ascii_lowercase[0]
>>>>> a
使用生成器可以相对容易地模拟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)
这产生
A
B
C
...
ZX
ZY
ZZ