多个变量的列表理解生成月份名称和数字
list comprehension for multiple variables generate month name and number
我正在尝试生成 "name and a serial number" 格式的列表。
例如:month name + number
print [each, i for i, each in enumerate(calendar.month_name[1:])]
显然我无法同时打印 each 和 i 变量。
有没有更好的方法来解决这个问题?
谢谢!
这样试试:
for i, each in enumerate(calendar.month_name[1:]):
print each, i # this will print on variables per line
这将打印列表:
print [[each, i] for i, each in enumerate(calendar.month_name[1:])]
您可以将它们转换为元组并打印它们
print [(each, i) for i, each in enumerate(calendar.month_name[1:])]
或者作为帕德莱克,你可以从1
开始,如
print [(each, i) for i, each in enumerate(calendar.month_name[1:],start = 1)]
如果你想要功能,你可以压缩:
print(zip(*(calendar.month_name[1:],xrange(1,13))))
[('January', 1), ('February', 2), ('March', 3), ('April', 4), ('May', 5), ('June', 6), ('July', 7), ('August', 8), ('September', 9), ('October', 10), ('November', 11), ('December', 12)]
我正在尝试生成 "name and a serial number" 格式的列表。
例如:month name + number
print [each, i for i, each in enumerate(calendar.month_name[1:])]
显然我无法同时打印 each 和 i 变量。 有没有更好的方法来解决这个问题? 谢谢!
这样试试:
for i, each in enumerate(calendar.month_name[1:]):
print each, i # this will print on variables per line
这将打印列表:
print [[each, i] for i, each in enumerate(calendar.month_name[1:])]
您可以将它们转换为元组并打印它们
print [(each, i) for i, each in enumerate(calendar.month_name[1:])]
或者作为帕德莱克1
开始,如
print [(each, i) for i, each in enumerate(calendar.month_name[1:],start = 1)]
如果你想要功能,你可以压缩:
print(zip(*(calendar.month_name[1:],xrange(1,13))))
[('January', 1), ('February', 2), ('March', 3), ('April', 4), ('May', 5), ('June', 6), ('July', 7), ('August', 8), ('September', 9), ('October', 10), ('November', 11), ('December', 12)]