不管什么语言,读写文件都是最基本而且最常用的操作。在进行读写操作之前,必须先用Python内置的open()函数打开一个文件,创建一个file对象!!!
读文件
基本的读文件操作


两种方式的区别是:with语句可以自动帮我们调用close()方法,而第二种方式需要我们手动调用 file.close() 来关闭文件

read、readline、readlines的区别
read([size]):从文件当前位置起读取size个字节,若无参数size,则表示读取至文件结束为止。它返回的是字符串对象
readline():每次只读一行内容,所以,读取时占用内存小,比较适合大文件。它返回的也是字符串对象
readlines():读取整个文件的所有行,保存在一个列表(list)变量中,每行作为一个元素,但读取大文件会比较占内存。
linecache模块:读取文件中的某一行

注意:这三种方法是把每行末尾的'\n'也读进来了,它并不会默认的把'\n'去掉,需要我们手动去掉:line = line.strip( '\n' )
写文件
写入文件基本操作


注意:write()方法不会在字符串的结尾添加换行符('\n')


write、 writelines区别
write()方法和read()、readline()方法对应,是将字符串写入到文件中
writelines()方法和readlines()方法对应,也是针对列表的操作。它接收一个字符串列表作为参数,将他们写入到文件中,换行符不会自动的加入,因此,需要显式的加入换行符
字符编码
要读取非UTF-8编码的文本文件,需要给open()函数传入encoding参数,例如,读取GBK编码的文件

注意:python 2.X 版本不支持在 open() 函数中加入encoding参数
网友评论