Python之檔案處理

金融运维民工zhengkk發表於2024-07-08

python進行檔案處理其實也很簡單,無法就那麼幾個要點。
1、開啟檔案
2、讀取檔案
3、寫入檔案
圍繞上面這三個要點展開了許多的方法,呼叫方法進行各種花樣的檔案處理。聽起來彷彿很牛逼,實際上沒有多少花頭,深刻理解了也就自然而然的掌握了。

例如先自己建立一個檔案,假設在D:\python-project\test.txt

下面一個一個的來說明上面三個知識點以及相對應的方法:

開啟讀取檔案
-- 開啟檔案就是open方法,但是開啟檔案的目的是讀取檔案內容或者寫入內容。
讀取的方法:
1> r 只讀
2> r+ 讀寫

my_file = 'D:\python-project\test.txt'
f = open('D:\python-project\test.txt','r',encoding='utf-8')
print(f)
輸出結果:<_io.TextIOWrapper name='D:\\python-project\\test.txt' mode='r' encoding='cp936'>

看到了嗎?上面這個結果是什麼呀?拿到的f實際上是一個檔案控制代碼,有了這個才可以呼叫檔案的各種方法。開啟檔案並讀取還有另外一種寫法:

with open('D:\python-project\test.txt','r',encoding='utf-8') as f:
        pass

--其中encoding='utf-8'可以不寫,預設好像是gbk

讀取檔案的四個方法:
(1)f.read()
把檔案中的所有內容全部讀取出來,返回的是字串型別。

(2)f.readline()
按照行數把檔案內容讀取出來,一次只讀取一行,類似於next()方法,返回的是字串型別。

(3)f.readlines()
按照每一行讀取,並把檔案中所有內容讀出來後存放在表格中,返回的是一個列表。

(4)f.readable()
判斷是否有可讀許可權,如果有可讀許可權,則返回True,否則返回False。

寫檔案

f = open('D:\python-project\test.txt','w')
或
with open('D:\python-project\test.txt','w') as f:
        pass

寫入檔案的三個方法:
(1)f.write('data')
只能新增字串,不可能新增序列,如列表

(2)f.writelines(['data1','data2'])
可以新增字串,也可以新增序列,但不能是數字序列。

(3)f.writable()
判斷是否有可寫許可權,如果有可寫許可權,則返回True,否則返回False。

相關文章