微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

用于创建+读取+附加+二进制的文件模式

如何解决用于创建+读取+附加+二进制的文件模式

该模式是ab+r是隐含的,“a’ppend和(” w’rite“+”“r’ead)是冗余的。由于cpython(即常规python)file基于C stdioFILE类型,因此以下是fopen(3)手册页中的相关行:

  • w +开放供阅读和写作。如果该文件不存在,则创建该文件,否则该文件将被截断。流位于文件的开头。

  • a +打开以进行读取和追加(在文件末尾写入)。如果文件不存在,则创建该文件。读取的初始文件位置在文件的开头,但是输出始终附加在文件的结尾。

加上“ b”可使DOS满意。大概您想做这样的事情:

>>> f = open('junk', 'ab+')
>>> f
<open file 'junk', mode 'ab+' at 0xb77e6288>
>>> f.write('hello\n')
>>> f.seek(0, os.SEEK_SET)
>>> f.readline()
'hello\n'
>>> f.write('there\n')
>>> f.seek(0, os.SEEK_SET)
>>> f.readline()
'hello\n'
>>> f.readline()
'there\n'

解决方法

我需要打开一个文件进行读写。如果找不到该文件,则应创建它。对于Windows,也应将其视为二进制文件。您能告诉我我需要使用的文件模式顺序吗?

我尝试了“ r + ab”,但是如果找不到它们就不会创建文件。

谢谢

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。