前言
在实际操作中,我们通常会用到许多文件中的数据。今天主要分享的是有关文件的读写操作。
一、文件的读取
open()方法
open(file, mode='r', encoding=None):
open 中有许多参数,这里只介绍三种
file : 需要写入文件的路径
mode : 对文件所要进行的操作
encoding : 指定编码方式
我们对文件进行操作前,需要利用打开文件返回的对象进行操作。这样更方便一些
f = open('test','r')
print(type(f))
返回对象 : <class '_io.TextIOWrapper'>
接下来的内容,我们用 f 代替文件对象
读取文件,我们需要指定文件为读的模式
f = open('test','r')
- f.readable() : 判断文件是否可读,返回布尔值
- f.read() :读取全部文件
- f.readline() : 只读取一行
- f.readlines() : 全部读取,并返回一个列表
当 read() 将数据全部读取出来之后,再同时使用readline()等其他方法就无法读取数据
二、文件的写入
在写入文件之前,我们需要指定文件为写的模式
f = open('test','w')
写入的数据只能是字符串
- f.writable() : 判断文件是否可以写入,返回布尔值
- f.write(str) : 一次只能写入一句话,可以返回字符串长度
- f.writelines(object) : 一次可以写入多个对象
当写入的文件名相同时,后面写入的数据会覆盖前面写入的数据
当想追加写入内容时,我们可以指定写入的模式为追加模式。即 mode=‘a’
三、混合模式
混合模式,就是同时进行读写操作
- mode = ‘r+’ : 读写操作,以读的操作为主
- mode = ‘w+’ : 读写操作,以写的操作为主
- mode = ‘a+’ : 读写操作,同 ‘w+’
四、其他文件
-
写入二进制文件
指定模式为 wb , 即 mode = 'wb'
-
json文件
在使用JSON之前,我们需要先导入JSON模块
json格式 : ‘{“name”:“age”}’
字典格式 : {“name”:“age”}
- json.load(f) 将JSON对象转换为字典
- json.loads(f)
- json.dump(f) 将字典转换为JSON对象
- json.dumps(f)
五、文件的关闭
- 方法一,手动关闭
在对文件进行操作之后,我们需要关闭文件,释放资源
f.close()
- 方法二,自动关闭
with 关键字用于Python的上下文管理器机制。这个机制能保证文件的正常关闭
with open(file, mode='r', encoding=None)
with open 的用法和 open一致
总结
这章主要分享了Python中对文件的操作。Python基础篇到这里就完结了。欢迎各位大佬评论交流。同时也欢迎各位大佬批评指正。