目录
一般在对文件进行IO操作之前,是需要先将文件打开
语法:open(file_name [, access_mode][, buffering])
参数说明:
file_name为文件的名称,这是一个必填的参数,返回的是一个文件的对象;
access_mode是可选参数,默认的access_mode是读模式
buffering是可选的参数,默认buffering是无。
access_mode参数值 | 参数值的描述 |
‘r’ | 读 |
‘rb’ | 二进制读 |
‘w’ | 写 |
‘wb’ | 二进制写 |
‘a’ | 追加 |
‘ab’ | 二进制追加 |
‘b’ | 二进制,处理一般的文本文件时,是用不到这个的,但是处理二进制的文件,比如图片或者音乐之类的,就应该在模式钟增加‘b’ |
buffering参数值 | 参数值的描述 |
0 | 不会寄存无缓冲,直接就把数据写到硬盘上 |
1 | 有缓冲,数据会先写到内存里,只有最后调用flush()或者是close()才会把缓冲数据写到硬盘里 |
大于1的整数 | 寄存区的缓冲大小,单位是字节 |
负值 | 寄存区的缓冲大小则为系统默认 |
方法 | 说明 |
read() | 按字节读取 |
readline() | 按行读取,每次读一行 |
readlines() | 一次读取所有内容,并按行返回列表 |
不管是调用read()还是readlines()读取文件,最后一定要记得调用close(),否则会一直占用资源。不过,如果在执行过程中出现异常的话,是调用不了close()的,所以这个时候可以用上try ... finally :
还有另外一种用法,这种用法就更为简便:
方法 | 说明 |
write() | 写入 |
以上资料均出自《Python爬虫开发于项目实战》一书,提取出来形成笔记,一是为了记录,二是为了方便日后查阅使用,如有冒犯,还请海涵。thx~
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) | 黑马程序员IT技术论坛 X3.2 |