今天來點實作面操作,對文字文件(txt)檔案的讀寫(I/O)操作
open('file path', 'mode')
第一個參數需要有檔案路徑,第二個參數則是操作模式
Mode | Description |
---|---|
r | 讀取(檔案必須存在否則之後讀取會失敗) |
w | 新建檔案寫入(檔案不存在會新建檔案,檔案存在會覆蓋內容) |
a | 資料附加到舊檔案後面 |
r+ | 讀取資料並可寫入 |
w+ | 覆蓋檔案內容,寫入新的東西,可讀取資料(檔案不存在會新建檔案) |
a+ | 資料附加到舊檔案後面,可讀取資料 |
b | 二進位模式 |
write()用於向文件寫入指定「字串」內容
f.write([str])
str 這邊必須為字串,否則會報錯
read()用於讀取文件,並可指定的讀取的字串長度,若未填寫則讀取整份文件
f.read([size])
size 將讀取文件的字串長度,若未填寫則讀取整份文件
用於讀取文件整行內容,包含「\n」字元,並可指定的讀取的字串長度,若未填寫則讀取整行內容
f.read([size])
size 將讀取文件的字串長度,若未填寫則讀取整行內容
close()用於關閉已開啟的文件,使其無法執行讀取及寫入功能
f.close()
path = 'text.txt'
f = open(path, 'w')
f.write('test')
f.close()
path = 'text.txt'
f = open(path, 'r')
content = f.read()
print(content)
f.close()
path = 'text2.txt'
# 寫入內容
f = open(path, 'w')
f.write('test')
f.close()
# 讀取數值
f = open(path, 'r')
content = f.read()
print(content)
f.close()
print('-----上為累加內容前,下為累加內容後-----')
# 在檔案後面累加內容
f = open(path, 'a')
f.write('\ntest2')
f.close()
# 讀取檔案累加後的內容
f = open(path, 'r')
content = f.read()
print(content)
f.close()
以上為文件I/O的操作說明,可能有點複雜,但其實還挺實用的
之後篇章,將可能會寫到除了txt外的檔案I/O方法,例如CSV、JSON、XML之類,敬請期待