该程序无法读取文本文件?
问题描述:
主程序是关于一个双人游戏。当玩家获胜时,变量win分别设置为1或2(作为一个字符串),并且每次玩游戏时将其写入文件score.txt。当游戏结束时,我想通过计算文件中的所有1和2来检查得分。这是该计划的一部分:该程序无法读取文本文件?
outfile = open("score.txt", "a")
outfile.write(win)
player1score = (outfile.read()).count("1")
player2score = (outfile.read()).count("2")
这是不行的,在文件被创建,但它是空的,我得到的错误:
player1score = (outfile.read()).count("1")
io.UnsupportedOperation: not readable
答
你打开它作为一个追加文件流,而不是输入。
您需要再次打开它作为阅读...或者只是将该信息存储在内存中。
+0
我关闭了文件,然后在阅读模式下重新启用它,但我无法弄清楚为什么分数对于两个玩家都显示为零 – Ovi
尝试给这个阅读http://www.afterhoursprogramming.com/tutorial/Python/Writing-to-Files/ –
尝试关闭文件后,它已被追加,然后重新打开该文件的阅读 – user3636636
你应该摆脱那些额外的括号。他们不需要在那里并降低可读性。 – IanAuld