带有 num 和列表中项目的字母范围

Alphabet range with num and item from list

我有一个列表:

lst = ['cat', 'cow', 'dog']

需要打印:

A1 cat
B2 cow
C3 dog

我该怎么做?

这是一种方法。

from string import ascii_uppercase
lst = ['cat', 'cow', 'dog']

for num, (letter, item) in enumerate(zip(ascii_uppercase, lst), 1):
    print('{0}{1} {2}'.format(letter, num, item))

# A1 cat
# B2 cow
# C3 dog   

说明

  • 使用 enumerate 作为可选起始值为 1 的数字计数器。
  • 使用string.ascii_uppercase循环大写字母表。
  • zip 并循环,使用 str.format 格式化输出。

实现此目的的一种方法是使用字母表的 ASCII 值并在循环的每次迭代中递增它。

ascii_char_code = 65
lst = ['cat', 'cow', 'dog']

for index, item in enumerate(lst):
    print(chr(ascii_char_code) + str(index) + ' ' + item)
    ascii_char_code += 1

chr()函数将ASCII码转换成对应的字符

您可以尝试这种简单的 enumerate 方法:

lst = ['cat', 'cow', 'dog']

chr_s = list(map(chr,range(65,90)))

for i,j in enumerate(lst,1):
    print("{}{} {}".format(chr_s[i-1],i,j))

输出:

A1 cat
B2 cow
C3 dog