我该如何只反转数字而不是其中的文字?
datas.txt
Bungo Charlie
Bungo Echo
Bungo Bravo
Bungo Tango
Bungo Alpha
with open('datas.txt', 'r') as f:
for i, line in enumerate(f):
print('{}. {}'.format(i+1, line.strip()))
期望:
5. Bungo Charlie
4. Bungo Echo
3. Bungo Bravo
2. Bungo Tango
1. Bungo Alpha
我得到了什么:
1. Bungo Charlie
2. Bungo Echo
3. Bungo Bravo
4. Bungo Tango
5. Bungo Alpha
答案 0 :(得分:0)
仅使用reversed()
函数将撤销所有操作:
for i, line in reversed(list(enumerate(f))
如果您只想反转数字,则可以像这样:
reversed(list(enumerate(reversed(f))))
如果您想要更清洁的东西,可以使用zip()
定义一个函数:
def reverse_enumerate(x):
return zip(reversed(range(len(x))), reversed(x))