文件操作2-Day3
阿新 • • 發佈:2018-02-02
.com family tell 文件 int pre 覆蓋 過程 col
一、文件操作流程
- 打開文件,得到文件句柄並賦值給一個變量
- 通過句柄對文件進行操作
- 關閉文件
二、文件打開模式
1、普通打開模式
- r:只讀模式(不加參數則默認只讀;不能寫,不能追加)
- w:只寫模式(只能寫、不能讀、不能追加;文件不存在則創建,存在則覆蓋)
- a:追加模式(不能讀;文件不存在則創建,存在則只追加內容)
普通模式不論讀、寫或者追加,都是按照字符來操作的,所有在操作過程中不需要進行編碼(encode)和解碼(decode)的動作
(1)、r讀
f=open("file",‘r‘,encoding=‘utf-8‘) print(f.read()) f.close()
(2)、w寫
f=open("file",‘w‘,encoding=‘utf-8‘) f.write("wesley") f.close()
(3)、a追加
f=open("file",‘a‘,encoding=‘utf-8‘) f.write("wesley") f.close()
2、同時讀寫模式
“+”號表示同時讀寫某個文件
- r+:可讀寫(可讀、可寫、可追加;不會創建不存在的文件;不管指針在什麽位置,依然在文件內容的最後添加內容)
- w+:可讀寫(可讀、可寫、可追加;文件存在則覆蓋,不存在則創建;必須設置指針為開始位置,才能讀取文件)
- a+:可讀追加(可讀、可追加;不存在則創建;必須設置指針為開始位置,才能讀取到文件,追加和寫在寫入文件時,不會清空之前的內容,在文件的最後添加內容)
(1)、r+
f=open("file2",‘r+‘,encoding=‘utf-8‘) print(f.readline()) f.seek(0) #設置指針的位置為開始 print(f.tell()) #獲取指針的位置 f.write("\nJuses loves you!") f.close() 返回值“ wesley #讀取的內容 0 #指針位置
註:不管指針在什麽位置,寫入的內容依舊在文件的最後
(2)、w+
f=open("file2",‘w+‘,encoding=‘utf-8‘) print(f.read()) f.write("Juses loves you!\n") f.seek(0) print(f.read()) print(f.tell()) #獲取指針的位置 f.write("\nJuses loves me!") f.seek(0) print(f.read()) f.close() 返回值: #第一次讀的內容 Juses loves you! #第二次讀的內容 18 #指針的位置 Juses loves you! #第三次讀的內容 Juses loves me!
寫入文件的內容如下:
寫讀,寫入的內容不受指針的影響,還是寫入在文件的最後一行;首選會創建一個文件,所以文件操作2-Day3