python-文件操作-讀,寫,追加


'''
open(文件的路徑,打開文件的方式,打開的文件編碼)

文件的路徑:
可以使用絕對路徑,也可以使用相對路徑 建議使用相對路徑
打開文件的方式
訪問文件的方式
r ---只讀方式打開文件,文件的執政會放在文件開頭,如果文件不存在就會報錯
w ---打開一個文件只用於寫入,如果這個文件已存在,就將文件替換,如果文件不存在,創建文件
a ---打開一個文件用於追加,文件存在的話 文件執政會放在文件的結尾,如果文件不存在創建文件
r+ ---打開一份文件進行讀寫 文件的執政將會放在文件的開頭
w+ ---打開一個文件進行讀寫 如果這個文件已存在,將文件替換,如不存在,創建新文件
a+ ---打開一個文件進行讀寫 文件存在的話 文件指針會放在文件的結尾 ,如文件不存在創建新文件

rb ---以二進制形式打開只讀方式打開文件,文件的執政會放在文件開頭,如果文件不存在就會報錯
wb ---以二進制形式打開打開一個文件只用於寫入,如果這個文件已存在,就降文件替換,如果文件不存在,創建文件
ab ---以二進制形式打開打開一個文件用於追叫,文件存在的話 文件指針會放在文件的結尾,如果文件不存在創建文件
rb+ ---以二進制形式打開打開一份文件進行讀寫 文件的指針將會放在文件的開頭
wb+ ---以二進制形式打開打開一個文件進行讀寫 如果這個文件已存在,將文件替換,如不存在,創建新文件
ab+ ---以二進制形式打開打開一個文件進行讀寫 文件存在的話 文件指針會放在文件的結尾 ,如文件不存在創建新文件
以二進制形式操作文件時,不要設置文件的編碼方式
'''
'''
讀取的方式
read() ---一次性全部讀取
read(size)---如果模式是以字符形式打開文件的 這個size便是的時讀取子的的個數
---如果模式時以字節[二進制]形式打開的 這個size表示的時讀取字節大小
readline()---讀取一行數據
readlines()---讀取所有行數據,並吧每一行當着元素放在列表中

讀取內容時,不會重復讀取--類似迭代器

與文件進行交互完畢關閉通道---不管是否出現異常-通道都需關閉
 
讀取文件

目錄結構

 

 

 1 #建立與文件之間的通道
 2 file_path = r'../test_01/os.py'
 3 
 4 #以字符形式打開一個文件 用於只讀
 5 handle = open(file_path,'r',encoding='utf-8')
 6 
 7 
 8 
 9 #打開文件 文件指針的默認位置是開頭
10 #移動文件指針
11 handle.seek(2)
12 
13 #讀取數據2字節數
14 data =handle.read(2)
15 print(data)
16 #
17 data =handle.read(10)
18 print(data)
19 '''
20 po
21 rt os
22 
23 #獲取
24 '''
25 #讀取一行數據
26 #已換行行為結束點的位置叫做一行
27 line_data = handle.readline()
28 print(line_data)
29 
30 #讀取所有行
31 line_data = handle.readlines()
32 print(line_data)
33 
34 #以只讀形式打開
35 handle = open(r'../test_01/os.py', "r", encoding='utf-8')
36 
37 #以二進制方式讀取
38 handles = open(r'../test_01/os.py','rb')
39 
40 #通過通道讀取數據
41 data =handle.read()
42 print(data)
43 
44 data1 =handles.read()
45 print(data)
46 print(data1)
47 
48 #關閉通道
49 handle.close()

 寫入文件與追加內容

'''
write(content)---如果模式是以字符形式打開文件的 這個content表示的是字符串數據
---如果模式時以字節[二進制]形式打開的 這個content表示是字節數據
writelines(容器)---如果模式是以字符形式打開文件的 這個容器是字符串數據
---如果模式時以字節[二進制]形式打開的 這個容器中的數據是字節數據
'''
追加內容"w"改為'a'
 1 file_path =r'..\test\test.txt'
 2 
 3 #建立與文件之間的通道
 4 handle = None
 5 try:
 6     #文件存在會被清空
 7     handle = open(file_path,'w',encoding='utf-8')
 8     handle.write('啦啦啦')
 9     #寫入多行數據需加換行符
10     handle.writelines(['lkekekek\n','hjshshshs\n','啦啦啦啦啦\n'])
11     handle.flush()
12 
13 except Exception as e:
14   print(f'出現異常,異常情況是{e}')
15 
16 finally:
17   if handle:
18    handle.close()
19    handle = None

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM