[英]File.write will not allow me to add to the textfile?
在我的 class 中,我的講師檢查了代碼以將名稱添加到文本文件並在發生 IOError 時識別它。 我完全復制了他寫的代碼。 它對他有效,但對我無效。 我能想到的唯一區別是他使用的是舊版本的 Python(這是 2017 年的在線視頻,正在做在線課程)。 我目前正在使用 Python 3.8。 這是代碼:
try:
file = open("namesList.txt", "a")
file.write("EOF")
except IOError:
print("IO Error")
file.close()
else:
print("EOF written successfully")
file.close()
我嘗試將代碼從 try 塊中拉出,看看是否可行,但沒有彈出錯誤。 它仍然會在 try 塊中和外部打印“EOF 寫入成功”,但在文本文件中“EOF”不顯示。
我希望我解釋得足夠好,如果我需要澄清其他任何事情,請告訴我。 謝謝!
JessDee,代碼按原樣為我工作。
無論如何,我認為在處理文件時應該考慮使用with語句。
它更干凈,更pythonic。 這樣,您無需擔心關閉文件。 Python 將為您完成。
我不知道它是否會解決您的問題,但這是需要考慮的事情。
這將是您使用with語句的代碼:
try:
with open("namesList.txt", "a+") as file:
file.write("EOF")
print("EOF written successfully")
except IOError:
print("IO Error")
請注意,我使用了 a+而不是a 。 這意味着它將以寫/讀模式打開。
由於我們不知道你的問題的確切性質,我不知道它是否會解決它,但它會從現在開始幫助你。 祝你好運 !
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.