本篇文章给大家带来的内容是关于python中文件操作的相关内容总结(附示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。
1. 文件操作介绍
说到操作文件我们肯定会想到流,文件的操作都是通过流来操作的。在python中文件的操作非常简单,并不像Java等其他语言一样有各种各样的流操作,我们直接使用open函数即可打开一个文件,然后进行各种操作,但是根据打开的不同的方式所能够执行的操作也不一样,打开文件的方式有:r, w, a, r+, w+, a+, rb, wb, ab, r+b, w+b, a+b 等等。
下面我们先看一个读取的文件操作:
In [2]: f = open(file='a.txt', mode='r', encoding='utf-8')In [3]: f.read()Out[3]: '每天坚持一点,\n每天努力一点,\n每天多思考一点,\n慢慢你会发现,\n你的进步越来越大\n'In [4]:
使用open函数打开文件,并且返回一个文件对象,open函数常见的几个参数file(要操作的文件名),mode(以什么模式打开)和encoding(指定一种编码来读取文件),根据不同的mode模式,返回的文件会有各种不同的操作。下面我们来看一下文件的几种操作。
2. 文件操作的几种方式
(1)只读操作
只读操作只需指定mode为r即可:
In [5]: f = open(file='a.txt', mode='r', encoding='utf-8') In [6]: f.read()Out[6]: '每天坚持一点,\n每天努力一点,\n每天多思考一点,\n慢慢你会发现,\n你的进步越来越大\n' In [7]: f.readable() <em>本文来源gao.dai.ma.com搞@代*码(网$</em> # 判断文件是否可读Out[7]: True In [8]: f.writable() # 判断文件是否可写Out[8]: False # 此处是以只读模式打开的文件,所以返回False不可写 In [9]: f1 = open(file='单分支结构.eddx', mode='rb') # 使用‘rb’可以打开存储为二进制的数据,图片、视频等 In [10]: f1.read(20)Out[10]: b'PK\x03\x04\x14\x00\x08\x00\x08\x00mN\xe3H\xa9\x95\xb3\x9eW\x01'
(2)只写操作
mode='w'
In [13]: f = open(file='a.txt', mode='w', encoding='utf-8') In [14]: f.read() # 此时尝试读取文件会报错 --------------------------------------------------------------------------- UnsupportedOperation Traceback (most recent call last) <ipython-input-14-571e9fb02258> in <module> ----> 1 f.read() UnsupportedOperation: not readable In [15]: f.write('葫芦娃') Out[15]: 3 In [16]: f.close() In [17]: !cat a.txt # 此时查看文件之前那的内容已经被覆盖了 葫芦娃 In [18]:
使用mode='w'操作文件时首先会在打开文件时先清空文件,然后再根据操作把内容写入文件,只读模式有以下特点: