如何在列表中添加行号?
How to add line numbers in a list?
我有一个列表,我想添加计数。
list1 = ['John', 'Maria',',','and','Danny', 'are','#','1','surfers','.']
我希望我的输出看起来像。
- John
- Maria
- ,
- and
- Danny
- are
- #
- 1
- surfers
- .
我的代码如下所示。我无法使用任何库。
count = 1
for count,a in enumerate(list1):
count += 1
print("{0}{1}".format(count, a))
注意以下几点:
enumerate
是一个内置的计数器,你不需要自己增加它。
- 您的缩进不正确,因此
print
未在循环中应用。
enumerate
有一个可选的 start
参数,因此您可以从 1 而不是 0 开始。
这是一个解决方案。
list1 = ['John', 'Maria',',','and','Danny', 'are','#','1','surfers','.']
for count, a in enumerate(list1, 1):
print("{0}. {1}".format(count, a))
# 1. John
# 2. Maria
# 3. ,
# 4. and
# 5. Danny
# 6. are
# 7. #
# 8. 1
# 9. surfers
# 10. .
enumerate
将生成一个元组,其中第一个值是循环中的索引。它从零开始计数,因此如果您希望列表从一开始,您需要将计数增加 1。
list1 = ['John', 'Maria',',','and','Danny', 'are','#','1','surfers','.']
for count, a in enumerate(list1):
print("{}. {}".format(count+1, a))
你快搞定了。试试这个:
for index, a in enumerate(list1):
print('%-1d. %s' % (index + 1, a)
这会打印:
- John
- Maria
- ,
- and
- Danny
- are
- #
- 1
- surfers
- .
随意。 注意 +1
因为枚举返回的索引是零索引的!
使用 zip
将两个列表放在一起以实现 列表理解
list1 = ['John', 'Maria',',','and','Danny', 'are','#','1','surfers','.']
n = len(list1)
numbered_list_str = '\n'.join([str(i) + '. ' + x for i, x in zip(range(1, n+1), list1)])
print(numbered_list_str)
- John
- Maria
- ,
- and
- Danny
- are
- #
- 1
- surfers
- .
我有一个列表,我想添加计数。
list1 = ['John', 'Maria',',','and','Danny', 'are','#','1','surfers','.']
我希望我的输出看起来像。
- John
- Maria
- ,
- and
- Danny
- are
- #
- 1
- surfers
- .
我的代码如下所示。我无法使用任何库。
count = 1
for count,a in enumerate(list1):
count += 1
print("{0}{1}".format(count, a))
注意以下几点:
enumerate
是一个内置的计数器,你不需要自己增加它。- 您的缩进不正确,因此
print
未在循环中应用。 enumerate
有一个可选的start
参数,因此您可以从 1 而不是 0 开始。
这是一个解决方案。
list1 = ['John', 'Maria',',','and','Danny', 'are','#','1','surfers','.']
for count, a in enumerate(list1, 1):
print("{0}. {1}".format(count, a))
# 1. John
# 2. Maria
# 3. ,
# 4. and
# 5. Danny
# 6. are
# 7. #
# 8. 1
# 9. surfers
# 10. .
enumerate
将生成一个元组,其中第一个值是循环中的索引。它从零开始计数,因此如果您希望列表从一开始,您需要将计数增加 1。
list1 = ['John', 'Maria',',','and','Danny', 'are','#','1','surfers','.']
for count, a in enumerate(list1):
print("{}. {}".format(count+1, a))
你快搞定了。试试这个:
for index, a in enumerate(list1):
print('%-1d. %s' % (index + 1, a)
这会打印:
- John
- Maria
- ,
- and
- Danny
- are
- #
- 1
- surfers
- .
随意。 注意 +1
因为枚举返回的索引是零索引的!
使用 zip
将两个列表放在一起以实现 列表理解
list1 = ['John', 'Maria',',','and','Danny', 'are','#','1','surfers','.']
n = len(list1)
numbered_list_str = '\n'.join([str(i) + '. ' + x for i, x in zip(range(1, n+1), list1)])
print(numbered_list_str)
- John
- Maria
- ,
- and
- Danny
- are
- #
- 1
- surfers
- .