我有一段代码,我已经设法开始工作,但不明白为什么一种方式有效而另一种方式无效。
以下代码的行为就好像open
模式仍然是w
而不是a
。所以文本输入只是相互覆盖。
def new_todo(x):
file = open("todo.txt", "a")
file.write(x)
return x
如果我使用相同的功能并删除return x
附加模式现在有效。这是为什么?
def new_todo(x):
file = open("todo.txt", "a")
file.write(x)
答案 0 :(得分:0)
根据user2304916的评论,Python 2的IDLE似乎没有将w
模式的初始更改从内存转储到a
。
退出并重新加载IDLE解决了问题,现在return x
的存在不会导致文本被覆盖。