我是一個學習Python初學者,近期剛學完文件操做。特意分享
文章分爲兩部分,第一部分爲文件讀取類型以及讀取的方式,第二部分爲練習題python
文件讀取的操做方式有如下幾種:只讀,只寫,追加,讀寫,寫讀ide
只讀 r
學習
f = open('test',mode='r',encoding='utf-8') # 打開文件,讀取方式爲`r`,編碼爲UTF-8 f1 = f.read() # 讀取文件 print(f1) #打印文件 f.close() # 關閉文件
只讀類型下,文件不能被修改編碼
讀寫 r+
code
f = open('test',mode='rb',encoding='utf-8') # 讀取方式變爲`r+` file = f.read() f1 = f.read() f.close()
當讀取方式爲r+
時,文件能夠被寫入,可是打印出來的是寫入前所讀取的utf-8
二進制讀 rb
代碼略去,文件以二進制的模式讀取。字符串
剩下的我將以表格形式統一展示,能夠參照對比以上代碼it
讀取方式 | 補充 |
---|---|
r | 只讀,不可被修改 |
r+ | 讀寫,光標在前,從第一個位置開始修改,打印出修改的字符數 |
rb | 以byte 方式讀取 |
w | 只寫,若寫入的目標文件沒有,則建立,有則清空再寫入 |
wb | 轉換爲byte 類型寫入 |
a | 打開文件,把光標移動到有文字的後面,再進行追加 |
ab | 以byet 類型加入 |
注
:r+
有兩個表現,一個是讀寫
,還有一個是寫讀
。須要注意。另,w+
和a+
我沒有寫,是由於學習階段用的相對來講較少table
我先以表格形式展現,再進行詳解class
讀取方式 | 用於場合
讀取方式 | 用於場合 |
---|---|
read() | 以字符讀,可添加參數(I ),讀前i 個字符 |
seek() | 調整光標位置 |
tell() | 調整光標位置,需放置於seek() 前 |
readline() | 一行一行的讀 |
readlines() | 將每一行當成列表中元素讀取,換行自帶 \n |
truncate() | 截取一段讀出來,從後往前讀 |
例若有一個名爲test
的文件,文件內容以下:
456926667
這是一個長爲10個字符的字符串
f = open('test',mode='r',encoding='utf-8') # 打開文件,讀取方式爲`r`,編碼爲UTF-8 f1 = f.read(5) # 讀取文件中前5個字符 print(f1) #打印文件 f.close() # 關閉文件
打印結果爲
45692
f = open('test',mode='w',encoding='utf-8') # 打開文件,讀取方式爲`w`,編碼爲UTF-8 f1 = f.seek() print(f1) #打印第五個字符 f.close() # 關閉文件
打印結果爲
2
剩下的我就不一一作演示,有須要能夠本身試一試
f = open('test',mode='w',encoding='utf-8')
此文件讀取方式,僅能讀取一個文件,另外代碼多
with open('test',mode='w',encoding='utf-8') as f: pass
此文件讀取方式,能同時讀取多個文件,且代碼量相對來講少
當須要同時操做兩個或兩個文件以上時,with open
方法會相對來講簡易許多
今天的文件筆記就先暫時分享到這,若是你也是剛剛一塊兒學習的,能夠添加個人羣 456926667,一塊兒交流互助學習。 若不能分享羣,請審覈者信息告知我。下篇文章還有練習