python3檔案的操作執行個體代碼

來源:互聯網
上載者:User
這篇文章主要為大家詳細介紹了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'''

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.