我正在尝试获取文本文件中位置[1]处已参加的游泳会议的数量,并将其加1。我已经尽力做到这一点,但现在想更新整数值。当前,该程序仅将新值写入下一行而不是进行更新。
with open("%s.txt" % month, 'r+') as f:
for line in f:
lineList = line.split(",")
if swimmersName == lineList[0]:
numSessions = int(lineList[1])
numSessions = int(numSessions) + 1
ineList[1] = numSessions
f.write(str(lineList[1]))
此刻文本文件看起来像这样:
Tom Jones,1
2
我希望2成为1所在的位置:(
我将使用这样的方法:
out = ""
with open("foo.txt","r+") as f:
for line in f:
tokens = line.split(",")
out += tokens[0] + "," + str(int(tokens[1])+1) + "\r\n"
f.seek(0)
f.write(out)
读取整个文件,根据需要修改每一行,并根据需要构建输出。然后,一旦您通读了整个文件,请返回文件的开头,并用新内容覆盖旧内容。