如何向txt文件输出添加索引,然后使用Python索引修改行

如何向txt文件输出添加索引,然后使用Python索引修改行,python,file,text,Python,File,Text,我有一个文本文件,可以用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]

我有一个文本文件,可以用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文件数据库没有它们


我希望我能找到帮助,因为我已经尝试了几个小时,仍然无法管理它。

打印部分使用该功能相对容易:

h = file('db.txt', 'r')
lines = h.read().split('\n')
h.close()
for index, line in enumerate(lines):
    print index, line
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,len(iline))内时: