python open函数的用法笔记

file = open('apple.txt', 'w')

open函数第一个参数是文件名称(包括路径),第二个参数是操作模式

  对于第二个参数有如下的选择:

  w:向文件写入内容

  a:追加写入,就是不修改文件原来的内容,在文件后面写入

  r+:既可以读文件,又可以向文件写入内容

  w+:同上

  a+:同上

  rb:读取二进制文件,例如图片文件

  wb:写入二进制数据,例如保存图片的时候会用到

  ab:追加二进制数据

  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()

猜你喜欢

转载自www.cnblogs.com/Alfred-ou/p/9301569.html