資(zī)訊

精準傳達 • 有效溝通

從品牌網站建設到網絡營銷策劃,從策略到執行的一(yī)站式服務

【Python從入門到精通】Python對文件的讀寫操作一(yī)覽表,非常實用,非常簡單

來源:公司資(zī)訊 | 2021.08.19

開(kāi)放(fàng)式功能
  Python對于文件操作更方便。沒有像Java那麽多的IO操作類。首先歡迎使用open函數,主要用于創建或打開(kāi)文件。語法格式爲:
  
  文件=打開(kāi)(文件名,模式=“r”,緩沖=無,編碼=無,錯誤=無,換行=無,closefd=True)
   1
   file:表示要創建的文件對象。
   file_name:要創建或打開(kāi)的文件的文件名。名稱應括在引号中(zhōng)。需要注意的是,如果要打開(kāi)的文件和當前執行的代碼文件在同一(yī)目錄下(xià),直接寫文件名即可。否則,此參數需要指定文件打開(kāi)的完整路徑。
   mode:可選參數,用于指定文件的打開(kāi)方式,可選的打開(kāi)方式如下(xià)表所示。如果不寫入,默認情況下(xià)文件以隻讀 (r) 模式打開(kāi)。
   buffering:可選參數,用于指定讀寫文件時是否使用buffer。如果buffering參數的值爲0(或False),表示打開(kāi)指定文件時不使用緩沖區;如果緩沖參數的值爲大(dà)于1的整數,則該整數用于緩沖區的大(dà)小(xiǎo)(以字節爲單位); if buffering 參數的值爲負數,表示使用默認的緩沖區大(dà)小(xiǎo)。默認情況下(xià),open 函數打開(kāi)緩沖區。
   encoding:手動設置打開(kāi)文件時使用的編碼格式。不同的平台有不同的編碼參數值。以Windows爲例,默認GBK編碼。
  
  表 1 open 函數支持的文件打開(kāi)方式
  
  模式含義的注釋
  r 以隻讀方式打開(kāi)文件,讀取文件内容的指針會放(fàng)在文件的開(kāi)頭。要操作的文件必須存在
  rb 爲二進制格式,使用隻讀方式打開(kāi)文件,讀取文件内容的指針位于文件的開(kāi)頭,一(yī)般用于非文本文件,如圖像文件、音頻(pín)文件操作、文件必須存在
  r+ 打開(kāi)文件後,可以從頭開(kāi)始讀取文件内容,也可以從頭開(kāi)始往文件中(zhōng)寫入新内容,寫入的新内容會覆蓋文件的中(zhōng)等長度原始内容操作文件必須存在
  rb+ 以讀寫方式打開(kāi)二進制格式的文件。讀寫文件的指針會放(fàng)在文件的開(kāi)頭。通常,非文本文件(如音頻(pín)文件)的文件必須存在 w 以隻寫模式打開(kāi)文件。如果文件存在,則打卡時會清除文件中(zhōng)原有的内容。如果文件存在,則清除其原有内容(覆蓋文件);否則,将創建一(yī)個新文件。
   wb 以二進制格式打開(kāi)文件,隻寫模式,一(yī)般用于非文本文件(如音頻(pín)文件)。如果文件存在,則其原始内容将被清除(覆蓋文件);否則,将創建一(yī)個新文件。
   w+ 打開(kāi)文件後,原來的内容會被清除,文件有讀寫權限。如果文件存在,則其原始内容将被清除(覆蓋文件);否則,将創建一(yī)個新文件。
   wb+ 以二進制格式打開(kāi)文件,讀寫方式,一(yī)般用于非文本文件。
   a 以追加模式打開(kāi)一(yī)個文件,該文件隻有該文件的寫權限。如果文件已經存在,則将文件指針放(fàng)在文件末尾(即新寫入的内容将位于現有内容之後);否則,将創建一(yī)個新文件
  ab 以二進制格式打開(kāi)文件,并使用追加模式隻對文件進行寫權限。如果文件已經存在,則文件指針位于文件末尾(新寫入的文件将位于現有内容之後);否則,創建一(yī)個新文件
  a+ 以讀寫模式打開(kāi)文件。如果文件存在,将文件指針放(fàng)在文件末尾(新寫入的文件将位于現有内容之後);相反,創建一(yī)個新文件
  ab+ 以二進制方式打開(kāi)文件,使用追加方式對文件有讀寫權限。如果文件存在,則文件指針位于文件末尾(新寫入的文件将位于現有内容之後);相反,創建一(yī)個新文件。
  從上表中(zhōng),我(wǒ)們可以得出以下(xià)結論:
  
  帶b的模式是以二進制格式打開(kāi)文件,例如模式rb;wb;ab中(zhōng)帶+的模式
  是以讀寫模式打開(kāi)文件。說白(bái)了就是可以讀寫文件,比如模式 r+;w+;a+;rb+;wb+;ab+
  沒有b,或者+,比如r模式是隻讀的,w模式是隻寫,a模式是隻追加文件。
  文件讀取
  讀取文件的三種方式:
  
   file.read(size) 方法,逐字節或字符讀取獲取文件的内容。 file 表示打開(kāi)的文件對象,size 是一(yī)個可選參數,用于指定一(yī)次可以讀取的最大(dà)字符(字節)數。如果省略,則默認一(yī)次性讀取所有内容。
   file.readline(size) 方法:逐行讀取文件内容。 file 表示打開(kāi)的文件對象,size 是可選參數,用于指定讀取每行時一(yī)次讀取的最大(dà)字符數(字節)。您可以循環讀取文件的所有内容。
   file .readlines() 方法:一(yī)次讀取文件中(zhōng)的多行,讀取結果以列表的形式返回。
  

—— 靈通雲微信公衆号 ——

熱門标簽

上一(yī)條———————

下(xià)一(yī)條———————

十七年 建站經驗

多一(yī)份參考,總有益處

聯系靈通雲,免費(fèi)獲得專屬《策劃方案》及報價

咨詢相關問題或預約面談,可以通過以下(xià)方式與我(wǒ)們聯系

業務熱線:400-688-6062 / 大(dà)客戶專線   南(nán)通:15818561755