我有一个文本文件,我可以用Python打开。
with open("database.txt", mode = "r") as text_file:
print ("\tDatabase: ")
for line in text_file:
print ("\t\t"+line[22:])
现在输出如下:
Database:
[Sandy] [20]
[Patrick] [5]
[Spongebob] [125]
[Squid] [1200]
[Garry] [1]
我的问题是我需要为从列表的1到长度的每一行添加索引。
Database:
1. [Sandy] [20]
2. [Patrick] [5]
n. [MrKrabs] [42]
在我必须能够改变与索引相对应的行之后。
Choose index you want to change: 1
Write down the name and the number: [MrsPuff] [300]
现在数据库变为
Database:
[MrsPuff] [300]
[Patrick] [5]
[Spongebob] [125]
[Squid] [1200]
[Garry] [1]
要求是索引仅在Python中显示。实际的txt文件数据库没有它们。
我希望我能找到帮助,因为我已经尝试了几个小时但仍然无法管理它。
答案 0 :(得分:0)
使用enumerate功能打印部件相对容易:
with open("database.txt", mode = "r") as text_file:
for iline, line in enumerate(text_file, 1):
print iline, line
注意使用第二个参数来开始编号为1,因为索引在Python中通常是基于0的。您需要再次从用户输入中减去1,以便稍后修改正确的行...
答案 1 :(得分:-1)
h = file('db.txt', 'r')
lines = h.read().split('\n')
h.close()
for index, line in enumerate(lines):
print index, line