read/write 程序中的问题 python

problems in read/write program with python

所以我有一个存档,其中有一个数字,比如说 1,我想做一个程序来读取那个 1,然后加 1,所以 1+1=2,然后在存档 2 中打印,所以现在存档中只有一个 2。我做的是这个

outfile = open('text.txt', 'r')
m=outfile.readline()
g=m+1
outfile.close()
outfile = open('text.txt', 'w')
outfile.write(str(g))
outfile.close()

但它一直在说:

TypeError: can't concatenate 'str' and 'int' objects

我知道我正在做的错误...但我无法解决它。介意在这方面帮助我吗?谢谢聪明人!

当你读到m时,它是一个字符串。在添加 1.

之前,您需要将其转换为 int
with open("text.txt") as inf:
    m = inf.read()

g = int(m) + 1

with open("text.txt", "w") as outf:
    outf.write(str(g))

我认为您之前曾问过类似的问题并且遇到了同样的问题,您正在尝试连接 stringsintegers

改成这个-g=int(m)+1

嗯,这就是 'error' 告诉你的。 您正在尝试 "add" 带有整数的字符串。

当您从文件中读取时,您正在读取文本。 因此,您必须将正在阅读的文本转换为整数。

如果您确切知道每一行中的内容,则可以只使用强制转换 g = int(m) +1