Python基礎——讀寫文件

      文件是操做系統管理和存儲數據的一種方式。shell

      Python內置了  open() 函數來打開文件,並建立一個文件對象。函數

1、打開文件:open 函數編碼

一、open 函數基本格式:spa

      myfile = open(filename,[mode])  操作系統

      意思是: myfile 爲引用文件對象的變量;filename 爲文件名,能夠是文件的絕對路徑;code

                    mode 爲文件讀寫模式。對象

二、mode讀寫模式包含: w  a  r  b +  排序

     w:寫文件,建立新文件。若文件已存在,則覆蓋源文件。內存

     a :  以追加的方式寫文件。若文件已存在,寫入的數據默認添加到文件尾;文件不存在,則建立新文件。utf-8

     r :  讀文件。當mode爲空時,默認爲讀文件。

     + : 用在模式末尾,表示文件打開後能夠同時進行讀、寫操做。例如 w+   r+

     b : 須要與 a  b  r 組合使用,用於讀寫二進制文件。

三、以不一樣mode打開文件示例

     

2、關閉文件:close()

      close() 函數基本格式:    myfile.close()

3、建立文件、寫入文件、讀取文件。其中 EOF 表示文件的結束符。

一、建立文件並寫入內容

      

      運行結果:

      

二、讀取文件內容

     

     運行結果:

     

4、文件的讀寫方法

一、文件讀寫方法:

     f.read()         把整個文件內容讀做一個字符串(最經常使用)

     f.readline()   把一行內容讀入一個字符串

     f.readlines()  把整個文件內容讀入一個字符串列表,每一行做爲一個字符串。

     f.write         將字符串寫入文件

     f.writelines()   將列表寫入文件       

二、文件屬性

     f.name      文件名

     f.closed     文件是否關閉(返回值爲布爾型)

     f.mode      文件讀取模式

     f.encoding      文件編碼格式(通常都是  utf-8 )建議在讀寫以前定義編碼格式,避免亂碼。

    示例:

    結果:

三、with 的用法

     通常在打開文件以後都須要關閉;可是常常會忘記關閉,由此而產生  with

    示例:

    

    

5、Python 2 亂碼問題 (Python 2  版本)

一、編碼

     支持中文的編碼,經常使用的國際編碼爲: utf-8   gbk   gbk2312

     decode   編碼     

     encode   解碼

二、亂碼示例  及  解決方案 (運行環境:pycharm )

     在Python 2 中若是刪除掉圖中編碼信息,則運行時會報錯。提示編碼出了問題,Python 2 默認將代碼內容當作 ASCII 編碼處理,但 ASCII 編碼不存在中文,所以報錯。

      解決方法就是:在代碼文件前段申明編碼格式。

     

三、控制檯亂碼 及 解決方案(運行環境:pycharm  與  控制檯即:Windows 運行cmd)

     ①、pycharm定義爲 utf-8 編碼,執行結果正常,但控制檯運行亂碼

           解決方法: 將 pycharm 的編碼格式改成 gbk 編碼

     ②、寫程序的時候講內容定義爲  Unicode編碼格式,  此時不管在pycharm 中運行仍是控制檯都能正常顯示中文,以下圖。(即:以Unicode對象的形式存儲在內存中,若是使用type查看,存儲形式是  Unicode。Python在向控制檯輸出Unicode對象的時候會根據輸出環境的編碼進行轉換。)

           

6、文件操做實例

      題目:將Linux系統下的 /usr/local/src/passwd 文件內容,按照第3個列大小進行排序

      解答:shell  可使用  awk  進行操做。

      

相關文章
相關標籤/搜索