我正在教自己如何编程,目前正在使用Python 3.3。我正在尝试附加一个文本文件。目前,文本文件如下所示:
117: 5.21|8.50|10.0|3.42
本文正在跟踪评级。所以ITEM_A的评分为117次,特征1的平均评分为5.21,特征2的平均评分为8.50,特征3的平均评分为10.0等等......
我希望能够更新这些内容。因此,如果我希望再次为ITEM_A评分,则117更改为118,而得分4.20|7.50|6.33|9.05
也会更改以反映更新的平均值。
我认为我可以在追加/读取访问模式('a +')中使用 tell() , 的组合来执行此操作seek() 和 write() 。但是,我似乎只能写到我的文件的末尾。我是在咆哮错误的树,还是我的代码不正确?
test_file = 'example.txt' #Current: 117: 5.21|8.50|10.0|3.42
file = open(test_file, 'a+')
file.seek(0, 0)
file.write('118') #I want: 118: 5.21|8.50|10.0|3.42
file.close()
答案 0 :(得分:1)
文档(http://docs.python.org/3.3/library/functions.html#open)说
'a'
用于附加(在某些Unix系统上,意味着所有写入都附加到文件的末尾,而不管当前的搜索位置)。
我想你想要'r+'
模式..?