Python基礎知識詳解 從入門到精通(六)檔案操作

GuanFuXinCSDN發表於2020-02-16

Python基礎知識詳解 從入門到精通(六)檔案操作

本篇主要是介紹python,內容可先看目錄
其他基礎知識詳解,歡迎檢視本人的其他文章
Python基礎知識詳解 從入門到精通(一)介紹
Python基礎知識詳解 從入門到精通(二)基礎
Python基礎知識詳解 從入門到精通(三)語法與函式
Python基礎知識詳解 從入門到精通(四)列表、元組、字典、集合
Python基礎知識詳解 從入門到精通(五)模組管理

開啟檔案

檔案物件名 = open(‘路徑+檔名’,‘開啟模式’) 若無路徑則預設為當前資料夾
如 file = open(‘E://python333.txt’,‘r’)
開啟記得關閉

開啟模式
r 以只讀方式開啟(預設)
w 以寫入方式開啟,會覆蓋已存在的檔案
x 如果檔案已存在,使用此模式開啟將異常
a 以寫入模式開啟,如果檔案存在則在末尾追加寫入
b 以二進位制模式開啟
t 以文字模式開啟(預設)
、+ 可讀寫模式(可新增到其他模式中使用)
U 通用換行符支援

讀寫模式 資料讀寫基本單位 操作許可權 注意事項
rb 位元組 讀取資訊,如果檔案不存在報錯
wb 位元組 寫入資訊覆蓋原始資訊,如果檔案不存在新建
ab 位元組 追加寫 寫入資訊到原資訊末尾,如果檔案不存在新建
rb+ 位元組 讀、寫 讀取資訊,如果檔案不存在報錯
wb+ 位元組 讀、寫 寫入資訊覆蓋原始資訊,如果檔案不存在新建
ab+ 位元組 讀、追加寫 寫入資訊到原資訊末尾,如果檔案不存在新建
r 字元 讀取資訊,如果檔案不存在報錯
w 字元 寫入資訊覆蓋原始資訊,如果檔案不存在新建
a 字元 追加寫 寫入資訊到原資訊末尾,如果檔案不存在新建
r+ 字元 讀、寫 讀取資訊,如果檔案不存在報錯
w+ 字元 讀、寫 寫入資訊覆蓋原始資訊,如果檔案不存在新建
a+ 字元 讀、追加寫 寫入資訊到原資訊末尾,如果檔案不存在新建

檔案物件方法

檔案指標:相當於書籤,相當於游標

  1. file.close()
    關閉檔案

  2. file.fileno()
    返回檔案的描述符(file descriptor,FD,整數值)

  3. file.flush()
    重新整理檔案的內部緩衝區,將在緩衝區的資料寫入檔案

  4. file.isatty()
    判斷file是否是一個類設tty備,是返回true

  5. file.next()
    返回檔案的下一行,或在沒有其它行時引發StopIteration異常

  6. file.read(size=-1)
    從檔案讀取size個位元組,當未給定size或給定負值時讀取剩餘的所有位元組,然後作為字串返回

  7. file.readline(size=-1)
    從檔案中讀取並返回一行(包括行結束符),或返回最大size個位元組

  8. file.readlines(sizhint=0)
    讀取檔案的所有行並作為一個列表返回(包含所有的行結束符);如果給定sizhint且大於0,那麼將返回總和大約為sizhint位元組的行

  9. file.seek(off, whence=0)
    在檔案中轉移檔案指標,從whence(0代表檔案起始,1代表當前位置,2代表檔案末尾)偏移off位元組

  10. file.tell()
    返回當前在檔案中的位置

  11. file.truncate(size=file.tell())
    擷取檔案到最大size位元組,預設為當前檔案位置

  12. file.write(str)
    想檔案寫入字串

  13. file.writelines(seq)
    向檔案寫入字串序列seq,seq應該是一個返回字串的可迭代物件

檔案物件名.closed 若檔案已經關閉返回true 否則返回false
檔案物件名.mode 返回檔案開啟模式
檔案物件名.name 返回檔名

使用pickle模組

需要匯入
Import pickle

Pickle.dump(需要寫入的物件,檔案物件名) 將列表等型別以二進位制寫入檔案

使用

import pickle
List2 = [2,3,4,9]
Pi_file = open(‘my_file’,’wb’)             #開啟檔案
pickle.dump(list,pi_file)                  #寫入
Pi_file.close()                            #關閉檔案

Pickle.load(檔案物件名) 將檔案中的二進位制讀取生成相應型別
使用如

import pickle
Pi_file = open(‘my_file’,’rb’)  #開啟檔案
List2 = pickle.load(pi_file)    #讀取
Pi_file.close()                 #關閉檔案

with語句 with open(路徑檔名,模式) as 檔案物件

如 with open(‘E://python333.txt’,‘r’)as f
with 會自動關閉檔案,無需手動關閉

相關操作

如f為一個檔名
list(f)將檔案內容轉化為列表,一行為一個元素

for I in f :
print(i) 按行迭代輸出檔案內容

最後

持續更新arduino 樹莓派 python 等等
接到有幫助的話 求點贊? 求關注❤️ 求分享?
有問題可以評論
點關注,不迷路
如果有任何錯誤,如何建議,請批評指教,不勝感激 !

相關文章