我的代碼:'打開()'不起作用?
filename = "C:/users/patrik/documents/mypython.txt"
with open(filename) as f:
if f.readlines()[0] == "patrik's file": #first line
f.write("This file has been read by patrik!")
爲什麼它不工作?我沒有收到任何錯誤,此後文件內容變得雜亂,我做錯了什麼?
我的代碼:'打開()'不起作用?
filename = "C:/users/patrik/documents/mypython.txt"
with open(filename) as f:
if f.readlines()[0] == "patrik's file": #first line
f.write("This file has been read by patrik!")
爲什麼它不工作?我沒有收到任何錯誤,此後文件內容變得雜亂,我做錯了什麼?
要執行讀取和寫文件操作就可以選擇這些模式之一:
'r+'
:
Opens a file for both reading and writing. The file pointer will be at the beginning of the file.
'a+'
:
Opens a file for both appending and reading. The file pointer is at the end of the file if the file exists. The file opens in the append mode. If the file does not exist, it creates a new file for reading and writing.
注意file
是一個內嵌函數在python中,所以你不應該用它作爲變量名稱
另外'''file'''是一個Python內建的,使用另一個變量名。 – ismail
呃抱歉在我的實際腳本中有'f'!如果我也想閱讀它,我必須打開它兩次嗎? –
他應該用'r +'模式打開文件。讀和寫。 'w'將首先清除*文件。 –
它以什麼方式不起作用? – BrenBarn
文件內容變得非常混亂,每次看起來都不一樣,它有一些奇怪的字符,我不能在這裏粘貼... –
當你說「沒有錯誤」,你的意思是'AttributeError:'str'對象沒有任何屬性「readlines''? – Eric