【发布时间】:2016-11-11 10:49:04
【问题描述】:
我有一个文本文件如下:
1
/run/media/dsankhla/Entertainment/English songs/Apologise (Feat. One Republic).mp3
3
/run/media/dsankhla/Entertainment/English songs/Bad Meets Evil.mp3
5
/run/media/dsankhla/Entertainment/English songs/Love Me Like You DO.mp3
我想在文件中搜索特定行,假设该行是song_path = "/run/media/dsankhla/Entertainment/English songs/Bad Meets Evil.mp3"
然后我想在后面寻找len(song_path)+2,以便我可以在文件中指向3。我该怎么做?
到目前为止,这是我的代码:
txt = open(".songslist.txt", "r+")
if song_path in txt.read():
byte = len(song_path)
txt.seek(-(byte), 1)
freq = int(txt.readline())
print freq # 3
freq = freq + 1
txt.seek(-2,1)
txt.write(str(freq))
txt.close()
【问题讨论】:
-
如果您的文件不是太大并且您可以在内存中完整地读取它,您可以使用
readlines()并简单地查看第 n+1 行。 -
@syntonym 代码的答案会很有帮助
-
@syntonym 即使我需要更改文件中的那一行。