Python基础语法 第8节课(打开文件 )
2021-01-26 10:15
标签:取数 pre pen 参数 中文 new 需要 font 打开文件 前言 打开文件有什么用? 数据是写在文件里面的,open file可以实现 读取数据 写入数据 1.打开文件-操作-关闭文件 文件打开以后,一定要关闭,否则会引起很多问题。 mode= ‘r‘ 读取模式 默认的模式就是r,可以不写。但是读取时,文件必须存在,不存在读取会报错:没有文件可读取 2.写入文件 ①文件不存在 mode=‘w‘ 覆盖模式 在w模式下,如果之前没有这个文件,会创建新的文件 完整操作---嗯???运行查看new_file.txt文件的内容,(第9节课的测试文件内容)乱码!! 默认的是ASCII 编码,是美国的标准,使用中文,必须用国际标准,编码格式是utf-8 即:写入中文,需要指定编码格式utf-8 ♥添加mode,关键字可不加 添加编码格式,必须加关键字encoding 原因是:open()函数的源码如下: mode排在第二位,所以关键字可加,可不加,直接用‘w‘ ‘a‘等,而encoding 排在第四位,必须要加关键字(不加就变成buffering,按照位置参数,一一对应)-----体现了关键字参数的意义。 坑1:如果之前已经存在同名文件,使用mode=‘w‘模式,会覆盖之前的文件内容,使用要慎重。 如何解决被覆盖的问题?-----mode=‘a‘ (add的意思) mode=‘a‘ 追加模式 每运行一次,会在文件内,追加一句 ’第9节课的测试文件内容‘ 在a模式下,如果之前没有这个文件,也会创建新的文件 mode=‘x‘ 独创模式 之前有同名文件,会报错,了解 mode = ‘b‘ 二进制模式 不能单独使用,要跟r,w组合使用 图片就是用二进制打开 mode= ‘t‘ 文本模式 上面说的mode =‘r‘实际上是mode=‘rt‘,因为默认都是用txt打开的,所以就可以省略 mode= ‘+‘加模式 组合使用 r+ :可以读,也可以写,写是追加到文件里面的 Python基础语法 第8节课(打开文件 ) 标签:取数 pre pen 参数 中文 new 需要 font 打开文件 原文地址:https://www.cnblogs.com/ananmy/p/12853978.html#打开文件
f = open(‘python_practise.txt‘)#同一个文件夹下,不需要加路径
#读取数据
data = f.read()
print(data)
#关闭文件
f.close()
#文件不存在时
file = open(‘new_file.txt‘)#报错!默认的mode=‘r‘,当文件不存在时,这样运行是不行的,(需要添加mode为‘w‘模式)
#文件不存在时,添加mode=‘w‘,可在当前路径下创建一个新的文件:new_file.txt
file = open(‘new_file.txt‘,mode=‘w‘)file = open(‘new_file.txt‘,mode=‘w‘)#添加mode为‘w‘模式,mode可不写
#写入数据
file.write(‘第9节课的测试文件内容‘)
#关闭文件
file.close()
file = open(‘new_file.txt‘,‘w‘,encoding= ‘utf-8‘)#添加编码格式encoding=‘utf-8‘
#写入数据
file.write(‘第9节课的测试文件内容‘)
#关闭文件
file.close()
def open(file,mode =‘r‘,buffering = None,encoding = None,......)
file = open(‘new_file.txt‘,‘w‘,encoding= ‘utf-8‘)#追加模式
#写入数据
file.write(‘第9节课的测试文件内容‘)
#关闭文件
file.close()
file = open(‘123.gif‘,mode=‘rb‘)
#读数据
print(file.read())#打印出一串16进制的数字
#关闭文件
file.close()
file = open(‘new_file.txt‘,mode=‘r+‘,encoding= ‘utf-8‘)
file.read()#先读
#写入数据
file.write(‘第9节课的测试文件内容‘)#再写
#关闭文件
file.close()
上一篇:C++ foreach循环