1.「r+」模式
r+ 寫入的位置是 當前游標所在位置,會直接改寫當前位置的值
r+ 可以續寫麼? 可以,但是必須把游標挪到最後
r 沒有建立檔案的能力
r_file = open("r.txt
", "
r+", encoding="
utf-8")
r_file.write(
"bbb\n")
r_file.close()
r_file1 = open("
r.txt
", "
r+", encoding="
utf-8")
print(r_file1.read()) #
讀全文print(r_file1.tell()) #
獲取當前游標所在位置
r_file1.write("
aaa\n")
r_file1.close()
2.「w+」模式
w+ 擁有寫入許可權,可以建立檔案
w 所有的write操作是先寫在記憶體中,只有結束的時候才會執行進去
w+ 和 r+ 的區別是 r+ 只在當前位置寫入,w+ 是全部重寫內容
3.「w」模式追加
先讀取,後寫入的方式實現用w模式追加
做的所有操作都是在記憶體中操作,並沒有落地到磁碟
解決w模式會清空替代的方式
file2 = open("w1.txt
", "
r", encoding="
utf-8")
txt =file2.read()
(txt)
txt = txt + "
abcd\n
"txt = txt.replace("
200", "
200000")
##以寫到模式開啟檔案,寫入內容,這個內容來自於記憶體
file1 = open("
w1.txt
", "
w", encoding="
utf-8")
file1.write(txt)
file2.close()
file1.close()
file = open("w1.txt
","r
",encoding="
utf-8")
txt =file.read()
(txt)
file1 = open("
w2.txt
","w
",encoding="
utf-8")
file1.write(txt)
file.close()
file1.close()
3.下列資料是使用者資訊表,基於性別,把男性寫入到nan.txt,女性寫入到nv.txt
1 xiaowang 男2 xiaohei 女
3 xiaohong 男
4 xiaobai 男
5 xiaozi 女
方法一:
file = open("w.txt","r",encoding="utf-8")file1 = open("nan.txt", "a+", encoding="utf-8")
file2 = open("nv.txt", "a+", encoding="utf-8")
for line in file:
line = line.strip()
print("line::", line)
if line.find("男") != -1:
file1.write(line+"\n")
if line.find("女") != -1:
file2.write(line+"\n")
file.close()
file1.close()
file2.close()
方法二:(需要手動建立檔案nan.txt、nv.txt, 「r+」模式沒有建立檔案的能力)
file = open("w.txt","r",encoding="utf-8")file1 = open("nan.txt", "r+", encoding="utf-8")
file2 = open("nv.txt", "r+", encoding="utf-8")
for line in file:
line = line.strip()
if line.count("男") > 0:
file1.read()
file1.write(line+"\n")
if line.count("女") > 0:
file2.read()
file2.write(line+"\n")
file.close()
file1.close()
file2.close()
檔案操作模式擴充套件 游標操作
with open 檔案 模式 encoding utf 8 as f 操作 pass temp.txt 111222333 with open temp.txt a encoding utf 8 as f f.write new msg 結果 111222333new msg 文字型別檔案的複製 ...
C語言目錄和檔案操作擴充套件
三 utime庫函式 四 rename庫函式 五 remove庫函式 六 課後作業 本章節擴充套件一些目錄和檔案操作的更多知識,因為這些知識涉及到時間操作,所以放在時間操作之後的章節中介紹。access函式用於判斷當前作業系統使用者對檔案或目錄的訪問許可權。包含標頭檔案 include 函式宣告 i...
檔案擴充套件屬性
擴充套件屬性ea,既以名稱 值對形式將任意元資料與檔案i 節點關聯起來的技術 在shell中操作 root bogon code setfattr n user.x v this is first linux root bogon code setfattr n user.y v this is f...