w写入模式会覆盖?

w写入模式会覆盖?

添加了w写入模式,之后write()是不会覆盖之前写的write()吗,那和a附加模式不是没有区别?如果没有添加r读取模式,是不是不能使用read()之类的读函数?

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

4回答
Python天小白 2020-07-19 19:00:56
反冲斗士 2020-07-18 12:11:14

个人理解是这样的:

w模式的确是会覆盖之前的内容

但是,要这样操作才能覆盖:1、原文里有内容,2、用w模式写入之后关闭了文件

如果你用write()写入文件,没有关闭,又一直用write()写写写,那相当于追加效果

但是你用write()写一次,关闭了文件,再用write()写一次,内容就会被覆盖

好帮手慕燕燕 2020-07-14 14:16:48

同学可以按下面的思路再理解一下,文件以某种方式打开,决定了打开后对这个文件原内容的操作模式,w模式即覆盖原内容,打开之后write就是写入内容,不管写多少,写几次都会被保存到文件中,内容不会被覆盖了

  1. 以w模式打开test.txt文档,如果文档中原来有内容"Welcome to imooc!"

  2. 打开之后写入"hello"和"world",文件中原有的内容"Welcome to imooc!"会被覆盖掉,写入的是"helloworld"

http://img1.sycdn.imooc.com//climg/5f0d483a0929d02b04490109.jpg

http://img1.sycdn.imooc.com//climg/5f0d491509247e5204350094.jpg

代码如下:

f = open('test.txt', 'w')
f.write("hello")
f.write("world")
f.close()

如果我的回答解决了您的疑惑,请采纳,祝学习愉快~


好帮手慕燕燕 2020-07-14 11:53:11

同学你好,

  1. 如果文件中原来有内容,以w模式打开这个文件进行写入操作,文件中原有的内容会被覆盖

  2. 以a模式打开文件进行写入操作,文件中原有的内容不会被覆盖,而是追加在原有内容的后面

  3. 没有添加r读取模式,也是可以使用read()函数读取文件的,默认使用r模式

如果我的回答解决了您的疑惑,请采纳,祝学习愉快~

  • 提问者 qq_慕侠8023311 #1
    但视频里两write()函数,后面的write()函数没有覆盖掉前面写的write()函数所写的内容,而是在后面添加了
    2020-07-14 12:03:54
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
1.Python零基础入门
  • 参与学习           人
  • 提交作业       2727    份
  • 解答问题       8160    个

想要进入Python Web、爬虫、人工智能等高薪领域,你需要掌握本阶段的Python基础知识,课程安排带你高效学习轻松入门,学完你也能听得懂Python工程师的行业梗。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师