扫码关注官方订阅号
人生最曼妙的风景,竟是内心的淡定与从容!
r 只能读 r+ 可读可写 不会创建不存在的文件 从顶部开始写 会覆盖之前此位置的内容 w+ 可读可写 如果文件存在 则覆盖整个文件不存在则创建 w 只能写 覆盖整个文件 不存在则创建 a 只能写 从文件底部添加内容 不存在则创建 a+ 可读可写 从文件顶部读取内容 从文件底部添加内容 不存在则创建
但是实验发现,这里的r+ 可读可写 不会创建不存在的文件 从顶部开始写 会覆盖之前此位置的内容不完整。
r+ 可读可写 不会创建不存在的文件 从顶部开始写 会覆盖之前此位置的内容
test.in的内容:
hello1 ok2 byebye3
执行以下:
with open("test.in", 'r+')as f: f.readline() f.write("addition")
文件的内容变成了:
hello1 ok2 byebye3 addition
而:
with open("test.in", 'r+')as f: f.write("addition")
文件内容则变成了:
additionk2 byebye3
因此,正确的表述应为:
r+可读可写,不会创建不存在的文件。如果直接写文件,则从顶部开始写,覆盖之前此位置的内容,如果先读后写,则会在文件最后追加内容。
r 只能读r+ 可读可写 不会创建不存在的文件 从顶部开始写 会覆盖之前此位置的内容w+ 可读可写 如果文件存在 则覆盖整个文件 不存在则创建w 只能写 覆盖整个文件 不存在则创建a 只能写 从文件底部添加内容 不存在则创建a+ 可读可写 从文件顶部读取内容 从文件底部添加内容 不存在则创建
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
但是实验发现,这里的
r+ 可读可写 不会创建不存在的文件 从顶部开始写 会覆盖之前此位置的内容不完整。test.in的内容:
执行以下:
文件的内容变成了:
而:
文件内容则变成了:
因此,正确的表述应为:
r+可读可写,不会创建不存在的文件。如果直接写文件,则从顶部开始写,覆盖之前此位置的内容,如果先读后写,则会在文件最后追加内容。
r 只能读
r+ 可读可写 不会创建不存在的文件 从顶部开始写 会覆盖之前此位置的内容
w+ 可读可写 如果文件存在 则覆盖整个文件 不存在则创建
w 只能写 覆盖整个文件 不存在则创建
a 只能写 从文件底部添加内容 不存在则创建
a+ 可读可写 从文件顶部读取内容 从文件底部添加内容 不存在则创建