python可以同时对文件进行读写操作吗
怪我咯
怪我咯 2017-04-17 17:26:58
[Python讨论组]

刚学习python文件操作,好奇有没有办法同时对文件进行读写操作?
我试着同时用‘r’和‘w‘方法打开了文件,但是如果进行write()操作之后,文件内容会被清空

怪我咯
怪我咯

走同样的路,发现不同的人生

全部回复(3)
天蓬老师

'w' 表示建立文件,如果存在就清空成空文件。'w+' 就是 'w' 加上读操作的能力。'a' 是追加,'a+' 就是 'a' 加上读操作的能力。'r' 是读取文件,'r+' 就是可读可写。

不过除非你真正明白你在做什么,不要同时读写文件,因为结果通常不是你想要的(特别是 Python 2 + Windows 还有你意想不到的行为)。

建议先阅读手册 man 3 fopen 及 man 2 open。

PHP中文网

你们人类所说的"同时"是不存在的.存在的是能在一个文件句柄下进行读或者写.
w+是会覆盖原文件的.你可以读,但是这时文件中是没有内容给你读的.
你可以写一些内容进去再读出来.
>>>` open("a.txt","w+").read()
''`
>>> open("test.txt","w+").read()
''

w+
r+
a+

PHP中文网

"w+"可以让你文件原来的内容不被“清空”,但你当你往文件中写数据时,写入位置处原来的数据肯定会被“覆盖”。所以,你要考虑清楚,你所说的“同时读写”到底是个什么场景,你预期的行为是什么。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号