python - 如何在 Python 中重写文本文件

标签 python python-3.x

所以如果我有这样的代码:

f = open('score.txt','r+')
playersScore = 1
oldscore = (f.read())
oldscore = int(oldscore)
score = oldscore + PlayersScore
f.write(str(score))
f.close()

文本文件中有 1 个。如果我尝试运行代码,它会给出此错误:

oldscore = int(oldscore)
ValueError: invalid literal for int() with base 10: ''

我该如何解决这个问题?我是 Python 初学者,所以请保持简单。

最佳答案

我认为问题是由添加新行而不是替换旧行引起的。这应该有效:

f = open('score.txt','r+')
playersScore = 1
oldscore = (f.read())
oldscore = int(oldscore)
score = oldscore + playersScore
f.seek(0)
f.write(str(score))
f.close()

关于python - 如何在 Python 中重写文本文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35385601/

相关文章:

Python:简洁的属性

python - ZeroMQ 有效的 .recv() 标志是什么?

python |创建一个文件并在每次运行时递增名称

python - 将 pandas 数据框中的值替换为另一个数据框中的值

python - 如何将内存 View 转换为字节?

python-3.x - 无限实时连续流式传输音频信号,Python

javascript - 将变量从 Flask (python) 传递到与 HTML 文件分开的 Javascript 文件中

Python 和 MySQLdb - 使用 DROP TABLE IF EXISTS 似乎会抛出异常

python - 使用 Pygame 和 Pickle 加载之前耗时

django - 如何在 Python 中创建一个 8 位的唯一 ID?