我有一段代碼,自從我設法開始工作,但不明白爲什麼一種方法可行,而不是其他方法。Python函數在文件中追加文本改寫
以下代碼的作用好像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)
它們都應該以附加模式工作。如果我必須猜測,可能最初使用'w'將函數放在一個文件中,然後將其修改爲'a',但忘記了重新加載(不是導入)或重新啓動會話,所以您仍然擁有記憶中的舊定義? – user2304916 2014-10-30 04:27:19
什麼是錯誤? – 2014-10-30 04:29:10
@MauroBaraldi沒有錯誤。他們都會完成,但該文件的內容將被覆蓋或不會取決於返回的存在。 – 2014-10-30 04:31:58