本文摘自php中文网,作者不言,侵删。
本篇文章给大家带来的内容是关于python中文件操作的相关内容总结(附示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。
1. 文件操作介绍
说到操作文件我们肯定会想到流,文件的操作都是通过流来操作的。在python中文件的操作非常简单,并不像Java等其他语言一样有各种各样的流操作,我们直接使用open函数即可打开一个文件,然后进行各种操作,但是根据打开的不同的方式所能够执行的操作也不一样,打开文件的方式有:r, w, a, r+, w+, a+, rb, wb, ab, r+b, w+b, a+b 等等。
下面我们先看一个读取的文件操作:
1 2 3 4 5 |
|
使用open函数打开文件,并且返回一个文件对象,open函数常见的几个参数file(要操作的文件名),mode(以什么模式打开)和encoding(指定一种编码来读取文件),根据不同的mode模式,返回的文件会有各种不同的操作。下面我们来看一下文件的几种操作。
2. 文件操作的几种方式
(1)只读操作
只读操作只需指定mode为r即可:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
|
(2)只写操作
mode='w'
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
|
使用mode='w'操作文件时首先会在打开文件时先清空文件,然后再根据操作把内容写入文件,只读模式有以下特点:
当文件不存在时,会自动创建文件,然后打开文件进行操作
打开文件时会先清空文件的内容,然后再从头开始写入
文件以只写模式打开,不能够读取
(3)追加操作
mode='a'
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
|
追加模式的操作:
打开文件时如果文件不存时会先创建文件
往文件中写入内容时都是在文件末尾写入,不论光标在哪
打开的文件只能写入,不能读取
(4)r+模式
r+
模式是加强的读操作,即可以读写:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
|
总结:增强型的读操作对文件可读可写,但是顺序必须是先读取在往里面写入,如果先读再写入再读取的时候可能会读取到空字符串
r+模式深坑请注意: 在r+模式下. 如果读取了内容. 不论读取内容多少. 光标显?的是多少. 再写入或者操作?件的时候都是在结尾进?的操作
(5)w+和a+模式
w+模式和a+模式在实际使用场景较少,这边简单介绍一下:
w+:增强型的w模式,可以写和读操作,但是也跟r+一样,如果先读操作再写操作的话会有坑出现,并且每次在打开文件是会先清空文件,因此使用场景较少
a+:增强型的a模式,也可以进行读写操作,但是写入时只能往文件的末尾写入,无论光标怎么移动,都只能在文件末尾写入
3. 文件的操作的方法
(1)文件的读取和写入
文件的写入:主要是write方法以及writelines方法
write方法:直接写入字符串即可,上面的例子中也有用到
writelines方法:传递的参数必须时可迭代的(如列表和元组等)
文件的读取:
read方法:read方法接收一个int型的参数,表示一次读取几个字符(seek的单位是字节),不提供默认是读取文件所有内容
readline方法:读取文件一行,文件很大时这个方法很使用,不会一次读取整个文件
readlines方法:读取出整个文件,以每一行分割存放到一个列表里并返回这个列表
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
|
readline(文件句柄)和readlines的区别
文件句柄是一个可迭代对象,在循环遍历时每遍历一次取一行,不会在读取文件时一次性全部读出来
readlines返回的结果是一个列表,会一次性把整个文件的内容读取出来并返回一个列表,在处理大文件时会非常消耗资源
也可以使用循环去遍历文件句柄,输出文件中的内容:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
|
(2)文件操作的其他方法
close:关闭文件
readable:判断文件是否可读
seek:移动光标,接收两个数据第一个参数表示偏移到哪个位置(移动的单位是byte. 所以如果是UTF-8的中?部分要是3的倍数),第二个参数表示从那个位置开始偏移(0,代表开头,1代表当前位置,2代表结尾)
seekable:判断当前文件的光标是否可移动
tell:返回当前光标所在的位置
truncate:截断数据(谨慎操作),默认截断光标后所有字符
writable:判断文件是否可写
(3)打开文件的另一种方式
在打开一个文件后,要记得在文件使用结束狗使用close方法关闭文件句柄,但有时在中间进行大量的操作后可能会忘了关闭,下面介绍的这种方法可以不用自己手动关闭文件了,他会在您操作解说后(代码块的语句执行完毕)自动关闭文件句柄,这种方法就是使用context上下文管理,使用with语句实现:
1 2 3 4 5 6 7 8 9 |
|
以上就是python中文件操作的相关内容总结(附示例)的详细内容,更多文章请关注木庄网络博客!!
相关阅读 >>
更多相关阅读请进入《Python》频道 >>

Python编程 从入门到实践 第2版
python入门书籍,非常畅销,超高好评,python官方公认好书。