Python入门教程之文件读写操作知识
Python是隨著人工智能時代的來臨而火爆起來的編程語言,入門簡單、功能強大,吸引了人們的廣泛學習加入。想要學好Python,一定要從基礎學起,然后進階深入學習,今天千鋒小編就給大家分享Python培訓入門教程中文件處理的讀、寫操作。
注意,在Python中,不需要導入外部庫來讀取和寫入文件,因為Python為創(chuàng)建、寫入和讀取文件提供了內置的函數。
讀文件
打開一個文件用open()方法(open()返回一個文件對象,它是可迭代的):
>>> f = open('test.txt', 'r')r表示是文本文件,rb是二進制文件(這個mode參數默認值就是r)。如果文件不存在,open()函數就會拋出一個IOError的錯誤,并且給出錯誤碼和詳細的信息告訴你文件不存在。
文件使用完畢后必須關閉,因為文件對象會占用操作系統(tǒng)的資源,并且操作系統(tǒng)同一時間能打開的文件數量也是有限的。
>>> f.close()由于文件讀寫時都有可能產生IOError,一旦出錯,后面的f.close()就不會調用。所以為了保證無論是否出錯都能正確地關閉文件,我們可以使用try … finally來實現。
Python文件對象提供了三個“讀”方法: read()、readline() 和readlines()。每種方法可以接受一個變量以限制每次讀取的數據量。
read() 每次讀取整個文件,它通常用于將文件內容放到一個字符串變量中。如果文件大于可用內存,為了保險起見,可以反復調用read(size)方法,每次最多讀取size個字節(jié)的內容。
readlines() 之間的差異是后者一次讀取整個文件,像.read() 一樣。.readlines() 自動將文件內容分析成一個行的列表,該列表可以由 Python的for … in …結構進行處理。
readline() 每次只讀取一行,通常比readlines() 慢得多。僅當沒有足夠內存可以一次讀取整個文件時,才應該使用readline()。
寫文件
寫文件和讀文件是一樣的,唯一區(qū)別是調用open()函數時,傳入標識符’w’或者’wb’表示寫文本文件或寫二進制文件:
>>> f = open('test.txt', 'w') # 若是'wb'就表示寫二進制文件>>> f.write('Hello, world!')>>> f.close()我們可以反復調用write()來寫入文件,但是務必要調用f.close()來關閉文件。忘記調用close()的后果是數據可能只寫了一部分到磁盤,剩下的丟失了。因此還是用with語句來得保險:
with open('test.txt', 'w') as f:f.write('Hello, world!')Python文件對象提供了兩個“寫”方法:write()和writelines()。
write()方法和read()、readline()方法對應,是將字符串寫入到文件中。
writelines()方法和readlines()方法對應,也是針對列表的操作。它接收一個字符串列表作為參數,將他們寫入到文件中,換行符不會自動的加入,因此,需要顯式的加入換行符。
文件處理的類型:
只要處理類型加上b(bytes),表示只這樣操作(一般不知道寫入編碼的時候用);
‘r’(讀) :讀取出來的內容為字符串類型;
‘rb’(只讀):以二進制的方式讀取;
’r+‘(可讀寫):以讀的方式打開,支持寫入;
‘w’(寫入) :創(chuàng)建新內容,覆蓋舊內容;
'w+’(寫讀):以創(chuàng)建的模式打開,支持讀取;
讀寫和寫讀指針都會停在最后(讀寫,不可讀取剛寫內容,寫讀:可以讀取剛寫的內容)。
本文來自千鋒教育,轉載請注明出處。
總結
以上是生活随笔為你收集整理的Python入门教程之文件读写操作知识的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: JavaScript中循环遍历JSON响
- 下一篇: 关于Python的执行原理你了解吗?