您好,登錄后才能下訂單哦!
在編程語言中,我們常常需要對文件操作,從而對數據進行修改和添加,而讀寫文件又是最常見的IO操作,本期我們就共同學習python中基本的文件操作。
如我們新建一個文件file.txt
文件的操作有3種常用模式,分別為r、w、a。
read() : 每次讀取整個文件,它通常用于將文件內容放到一個字符串變量中。
f = open('G:\\file.txt','r')
r1 = f.read()
print(r1)
運行結果
hello !
python !
hello !
world !
readline() :當我們不需要讀取整個文件,只需要讀取一行時,就用readline()
運行結果為
hello !
readlines(): 一次性讀取文件所有行 自動將文件內容分析成一個行的列表
運行結果為
['hello !\n', 'python !\n', 'hello !\n', 'world !']
然而我們常常需要字符創形式的內容,此時可以由 Python 的 for … in … 結構進行處理。
f = open('G:\\file.txt','r')
for line in f.readlines():
print(line)
此時運行結果為:
hello !
python !
hello !
world !
注:with語句:在打開文件后,為了防止忘記關閉文件,引入with語句,讓其自動關閉。
with open(“G://file.txt","r") as f :
pass
f = open("G://file.txt",'w') #用寫入模式打開文件
f.write("\nI love python!") #寫入內容
此時文件中原內容被清空和替換,文件內容為:I love python!
在“w”模式下需要注意的是:
1.如果本身沒有這個文件存在,將新建改文件;
2.如果文件存在并有內容,文件將被情況重寫。如果想保留原來的內容,可以使用“a”方式在文件中結尾附加數據,如下:
f = open("G://file.txt","a") #用添加模式打開文件
f.write("I love python!") #寫入內容
此時在文件末尾增加了寫入的內容,原內容未被替換,內容如下:
hello !
python !
hello !
world !I love python!
由于文件讀寫時都有可能產生IOError,一旦出錯,后面的f.close()就不會調用。所以,為了保證無論是否出錯都能正確地關閉文件,我們可以使用try … finally來實現:
try:
f = open('G://file.txt', 'r')
print(f.read())
finally:
if f:
f.close()
但是每次都這么寫實在太繁瑣,所以,Python引入了with語句來自動幫我們調用close()方法:
with open('G://file.txt', 'r') as f:
print(f.read())
這和前面的try … finally是一樣的,但是代碼更佳簡潔,并且不必調用f.close()方法。
前面我們說的默認都是在.txt文件中進行操作,且是utf-8文件,如果我們要讀取其他類型的文件又該如何操作呢,以下是一些總結
作為文件操作的補充,下期我們將共同學習目錄操作在python中的使用!
文章來自公眾號:睿江云計算
睿江云官網鏈接:https://www.eflycloud.com/home?from=RJ0024
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。