我有一个带有名称/分数对的文本文件。这个名称和相应的分数用制表符分隔,每个名称/分数对分别在一行。
如果我想添加新人的结果,如何将新名称/分数对写入文本文件以保留此布局?
我从文本文件中读取数据并将其放在字典中,以便在整个程序的其余部分中使用。将整个字典写入文本文件可能不是一个好主意,所以我认为新的细节可以存储在列表中,然后写入文件。我无法获得正确的格式。
答案 0 :(得分:1)
这个链接是关于阅读和写作模式的很好的教程:http://www.tutorialspoint.com/python/python_files_io.htm
如果您使用纯文本作为值,请使用“a”
打开文件with open(filename, 'a') as file:
file.write(new_stuff)
#Where 'new_stuff' is a string of what you want to write in it
答案 1 :(得分:0)
就像之前的回答一样,但你要求的格式是新的_stuff:
name = 'sdf'
score = 5
new_stuff = '%s\t%d\n' % (name, score)
with open(filename, 'a') as file:
file.write(new_stuff)
答案 2 :(得分:0)
使用以下代码开始使用:
with open(r"\path\to\scores.txt", 'a') as f:
f.write(name + "\t" + score + "\n")
这将打开文件scores.txt
,准备附加一些数据('a'
)。
现在该文件已打开,我们将编写人员姓名,然后是选项卡("\t"
),然后是他们的分数,然后是新行("\n"
)。它将提供类似于此的输出:
Name 7
您可能需要稍微修改它以使用您自己的变量名称。