【问题标题】:What is the difference between "rb+" and "wb+"? [duplicate]“rb+”和“wb+”有什么区别? [复制]
【发布时间】:2019-02-08 10:31:20
【问题描述】:

rb+wb+ 都可以读取和写入二进制文件,那么它们有何不同?

是他们读写的顺序吗?

【问题讨论】:

  • 你的意思是除了以只读方式打开会拒绝写入吗?
  • @JonClements 这两个都不是只读的,+ 的意思是“打开一个磁盘文件进行更新(读写)”。
  • @user4815162342 啊……是的……当然……这是我的一个相当尴尬的大脑打嗝:)

标签: python file


【解决方案1】:

总之

  • rb+ 不会从头开始创建文件

  • wb+ 确实从头开始创建文件

除此之外没有任何区别。

【讨论】:

  • 重要的是要认识到“从头开始创建文件”意味着“如果找到,则销毁(截断到长度为 0)现有文件”。
  • 哦,所以rb+ 文件必须已经存在?
  • @coder80 使用rb+时确实文件必须已经存在。
  • @coder80 是的。可悲的是,没有“如果文件存在则使用该文件,如果不存在则创建一个”的模式。 (除了rw,还有x,和r相反,如果文件不存在就会创建,但是会失败 i> 如果存在。)
猜你喜欢
  • 1970-01-01
  • 2011-01-11
  • 1970-01-01
  • 2019-07-16
  • 2015-11-23
  • 2013-02-13
相关资源
最近更新 更多