Python文件的讀寫操作
讀寫模式的區別
讀寫模式 | 是否可讀 | 是否可寫 | 文件不存在時 |
---|---|---|---|
r | 是 | 否 | 報錯 |
r+ | 是 | 是,覆蓋 | 報錯 |
w | 否 | 是,覆蓋 | 創建新文件 |
w+ | 是 | 是,覆蓋 | 創建新文件 |
a | 否 | 是,追加 | 創建新文件 |
a+ | 是 | 是,追加 | 創建新文件 |
文本與二進制模式的區別
默認爲文本模式,如果想要讀取或寫入二進制數據,可以通過參數b
指定:
# 下載圖片
img = requests.get(image_url).content
# 存圖片
with open("{path}/{img_name}".format(path=path,img_name=img_name),"wb") as f:
# 其實有返回值,返回值爲寫入行數
f.write(img)
一次性寫入多行的操作
# 每一行的內容存入列表
context = ['xxx','yyy','zzz']
# 換行
context = [c+"\n" for c in context]
# 在當前同級目錄下創建demo.txt文件並逐行寫內容
with open("demo.txt","a",encoding="utf-8") as f:
f.writelines(context)