這是我的代碼是什麼樣子是的,這是另一個人「STR「對象有沒有屬性‘寫’的問題
import re
fileIN = str(open('instructions.txt', 'w+'))
contents = re.sub('a', 'x', fileIN)
fileIN.write(contents)
我想這個程序來代替字母‘A’字母」 X」的文件 'instructions.txt',像這樣:
a
ab
abc
TO
x
xb
xbc
然後將結果保存在同一文件中。但是,當我運行它,我得到以下錯誤信息:
AttributeError: 'str' object has no attribute 'write'
我敢肯定,這是一個速戰速決,但我似乎無法找到它。
任何幫助將不勝感激!讓我知道是否需要提供更多信息。 (免責聲明:請原諒我發佈一個非常常見的問題,我查看了許多類似的線程,但我無法收集任何解決方案,我剛開始學習python一週前,我想也許我可以嘗試寫一個小程序來幫助我節省一些時間在工作中,不幸的是,這讓我沉溺於WAAAY太多的時間試圖弄清楚自己。)
(編輯:謝謝所有的評論和幫助。我認爲我的問題會陷入地獄深處,因爲我認爲這個問題太微不足道了,我覺得自己真的被編碼noob支持,我很高興我有這樣的經歷。)
您認爲'fileIN.write(contents)'的作用是什麼? – jwodder
'fileIn'應該是一個字符串還是不是?如果是的話,你爲什麼期望它有'write()'屬性?如果沒有,爲什麼給它分配一個字符串? – Goyo
對於以下答案中描述的較大錯誤,我們並沒有實現,但我懷疑「」w +「不是您想要使用的文件模式。任何''w''模式都會立即截斷文件,這使得嘗試讀取其內容有點無用。我想如果你要寫,然後重新閱讀文件的某些部分,這可能會很有用,但這不是你正在做的。你可能想要''r +「',它不會截斷,並且可以讓你按任何順序讀寫。儘管你可能想在自己的閱讀和寫作之間進行截斷(如果新內容比舊的內容短) – Blckknght