這篇文章主要為大家詳細介紹了python3檔案的操作執行個體代碼,具有一定的參考價值,感興趣的小夥伴們可以參考一下
# Auther: Aaron Fan'''開啟檔案的模式有三種:r,唯讀模式(預設)。w,唯寫模式。【不可讀;不存在則建立;存在則刪除內容;因為會清空原有檔案的內容,一定要慎用】a,追加模式。【可讀; 不存在則建立;存在則只追加內容;】注意最後要記得關閉檔案:f.close()python只能將字串寫入到文字檔。要將數值資料存放區到文本本件中,必須先試用函數str()將其轉換為字串格式。#r模式(唯讀模式)f = open('yesterday',encoding='utf-8')data = f.read()f.close()print(data)#唯讀檔案的前5行:f = open('yesterday','r',encoding='utf-8')for i in range(5): print(f.readline())#以列表的方式讀取這個檔案f = open('yesterday','r',encoding='utf-8')for line in f.readlines(): print(line)#對檔案的第3行,做一個特殊的列印(這種方式比較低效,因為它會先把檔案全部讀取到記憶體中,檔案較大時會很影響效能)f = open('yesterday','r',encoding='utf-8')for index,line in enumerate(f.readlines()): if index == 2: print('-----測試線----',line) continue print(line)#比較高效的,逐行讀取檔案內容,因為它是一行一行的去讀取檔案,不會先把檔案一次性全部讀取到記憶體中f = open('yesterday','r',encoding='utf-8')for line in f: print(line)#比較高效的,對檔案的3三行進行過特殊列印f = open('yesterday','r',encoding='utf-8')count = 0for line in f: if count == 2: print('------測試線----:',line) count += 1 print(line)#w模式(如果沒有就建立檔案,如果有就清空檔案,一定要慎用)f = open('yesterday','w',encoding='utf-8')f.write("這就是一行測試\n")f.write("測試2\n")f.write("測試3")#a模式(追加模式,如果沒有就建立檔案,如果有就把內容追加進去)f = open('yesterday','a',encoding='utf-8')f.write("test1\n")#檔案游標的操作f = open('yesterday','r',encoding='utf-8')#獲得檔案的游標print(f.tell())print(f.readline())print(f.tell())#回到最開始的位置(也可以指定一個位置,前提是你得知道你去往的字元具體在哪個位置才行)f.seek(0)#顯示檔案的編碼print(f.encoding)#顯示檔案控制代碼的編號(我並不確定這個說法是否正確,用到時請仔細去查一下)print(f.fileno())#測試是否是一個終端裝置檔案print(f.isatty())#把緩衝的內容重新整理到硬碟(進度條那個指令碼裡有寫一個樣本)f.flush()#指定檔案從哪裡開始截斷,如果沒有參數,預設從0開始等於清空了這個檔案#f.truncate()#r+ 模式(讀,追加模式)f = open('yesterday','r+',encoding='utf-8')data = f.read()print(data)f.write("test...\n")#還有 w+寫讀模式, a+追加讀模式,這一般不用,真用到了再去瞭解下吧#rb 模式,以二進位的方式讀取這個檔案#wb 模式,二進位寫''''''#with語句(很實用,記得要經常用喲~,在《Python編程從入門到實戰》那本書裡的檔案與異常那一章有詳細用法)#為了避免開啟檔案後忘記關閉,可以通過管理上下文,即:with open('log','r') as f: ...#如此方式,當with代碼塊執行完畢時,內部會自動關閉並釋放檔案資源。#在Python 2.7 後,with又支援同時對多個檔案的上下文進行管理,即:with open('log1') as obj1, open('log2') as obj2: pass'''