我一直在寻找,但找不到解决这个问题的方法,〜这不需要任何编码来解决实际问题!〜
如果给了我一个文件,我使用 for...open(filename) 打印出每一行。这会给我一个结果......
line 1
line 2
line 3
line....
但是,我要做的是对每一行进行编号,以便我的打印看起来像......
#1 line 1
#2 line 2
#3 line 3
我将如何更改我的打印语句以打印出每行计数的 #1-30。
您可以在循环中使用该enumerate()
函数来生成数字:
with open(filename) as f:
for i, line in enumerate(f, 1):
print('#{}: {}'.format(i, line.rstrip('\n'))
1
起始值指示从 1而enumerate()
不是默认的 0 开始。
使用enumerate
:
import sys
with open(filename) as f:
lines = ('#{} {}'.format(lineno, line) for lineno, line in enumerate(f, 1))
sys.stdout.writelines(lines)