file = open('apple.txt', 'w')
open函數第一個參數是文件名稱(包括路徑),第二個參數是操做模式。app
對於第二個參數有以下的選擇:函數
w:向文件寫入內容編碼
a:追加寫入,就是不修改文件原來的內容,在文件後面寫入spa
r+:既能夠讀文件,又能夠向文件寫入內容code
w+:同上對象
a+:同上blog
rb:讀取二進制文件,例如圖片文件圖片
wb:寫入二進制數據,例如保存圖片的時候會用到utf-8
ab:追加二進制數據get
rb+:二進制的讀寫模式,便可以讀文件,又能夠向文件寫入內容
wb+:同上
ab+:同上
總結:有符號+的就表示讀寫模式,第二個字母有b的就表示二進制相關的文件,r是讀,w是寫,a是在文件後面寫
open函數返回一個文件對象,這個對象有下面5個方法能夠使用:
1.file.read() 讀取文件
2.file.readline() #讀取單獨的一行,知道一個換行符出現,也讀取這個換行符
3.file.readlines() #讀取文件中的全部行,並將其做爲列表返回
4.file.write() #往文件中寫入一些內容
5.file.close() #關閉這個文件
例子1:寫入一遍泰戈爾詩集
1 # -*- coding: utf-8 -*- 2 3 poem = ''' 4 做者:泰戈爾\n 5 這世界一度是你的,也永遠是你的。\n 6 由於你無所企求,個人帝王,你的財富不足以使你快樂。\n 7 你視財富如草芥。\n 8 因此你在漫長的歲月中,把你的一切給予我,而在我心裏不斷地贏得你的王國。\n 9 一天又一天,你從個人心頭買得黎明,並且發現你的愛已經刻成了個人生命的形象。\n 10 ''' 11 12 #沒有這個文件的時候,自動建立一個新文件 13 with open(u'採果集第77篇.txt', 'w') as f: 14 f.write(poem) 15 f.close() 16 17 #寫入新內容以後,打開文件看一看 18 with open(u'採果集第77篇.txt', 'r') as f: 19 content = f.read() 20 f.close() 21 22 #我在控制檯上看,全部要轉一下編碼格式,否則看到的是亂碼 23 print content.decode('utf-8').encode('gbk')
例子2:保存一張風景圖片
1 # -*- coding: utf-8 -*- 2 import requests 3 4 #在網上隨便找一個圖片的URL 5 page = requests.get('https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1531405541704&di=6cfae0df4e75808bc70fe602d1a09daa&imgtype=0&src=http%3A%2F%2Fimg3.iqilu.com%2Fdata%2Fattachment%2Fforum%2F201304%2F11%2F11121140u0k3rr5ohrukr4.jpg') 6 picture = page.content 7 8 #圖片是二進制格式,全部用wb模式寫入,音樂文件同理 9 with open(u'風景圖.jpg', 'wb') as f: 10 f.write(picture) 11 f.close()