我在 Python 中使用 pickle 模块并尝试不同的文件 IO 模式:
# works on windows.. "rb"
with open(pickle_f, 'rb') as fhand:
obj = pickle.load(fhand)
# works on linux.. "r"
with open(pickle_f, 'r') as fhand:
obj = pickle.load(fhand)
# works on both "r+b"
with open(pickle_f, 'r+b') as fhand:
obj = pickle.load(fhand)
我从未在任何地方读过有关“r+b”模式的内容,但在文档 http://docs.python.org/2/tutorial/inputoutput.html.
我正进入(状态EOFError
在 Linux 上如果我使用"rb"
模式并且在 Windows 上如果"r"
用来。我刚刚给了"r+b"
模式一个镜头,它对两个镜头都起作用。
What's "r+b"
模式? “rb”和“r+b”有什么区别?为什么它有效,而其他的却无效?
r+
用于读取和写入模式。b
用于二进制。r+b
mode 以读或写模式打开二进制文件。
您可以阅读更多内容here http://docs.python.org/2/tutorial/inputoutput.html#reading-and-writing-files.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)