python 文件读写with open模式r,r+ w,w+ a,a+区别详解

python中的 with open主要要来进行文件读写的操作

在 Python 中使用文件的关键函数是 open() 函数。
打开/创建文件使用open(file,mode)函数,open() 函数有两个主要参数:文件名和模式,该函数的参数定义如下:
file:文件名,可以是包含路径的文件名
mode:文件打开模式
r:只读模式,文件不存在泽报错,默认模式(文件指针位于文件末尾)
r+:只读模式,文件不存在泽报错(文件指针位于文件开头)
w:写入模式,文件不存在则自动报错,每次打开会覆盖原文件内容,文件不关闭则可以进行多次写入(只会在打开文件时清空文件内容)
w+:写入模式,文件不存在则自动报错,每次打开会覆盖原文件内容,文件不关闭则可以进行多次写入(只会在打开文件时清空文件内容,指针位置在文件内容末尾)
a:追加模式,文件不存在则会自动创建,从末尾追加,不可读。
a+:追加且可读模式,刚打开时文件指针就在文件末尾。
打开文件/创建文件:

with open("test.txt","a") as f:

写入:

f.write("abc")

关闭文件:

f.closed

例子:

with open("xxx.txt","w",encoding="utf-8") as f:
    f.write("篮不住的十三")
with open("xxx.txt",encoding="utf-8") as f:
    print(f.read())

对应结果
执行结果
生成文件
在这里插入图片描述
文件内容
在这里插入图片描述

为了更好的区分这几种模式,整理了一下表格,如下:
请添加图片描述

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐