相关疑难解决方法(0)

文件对象中的rb和r + b模式有什么区别

我在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)
Run Code Online (Sandbox Code Playgroud)

我从来没有在任何地方阅读过"r + b"模式,但在文档中提到了它.

我得到EOFError在Linux上,如果我使用的"rb"模式,在windows下"r"使用.我只是给了"r+b"模式一个镜头,它正在两个都工作.

什么"r+b"模式?"rb"和"r + b"之间有什么区别?当别人不这样做时,为什么会这样?

python file-io file pickle

41
推荐指数
3
解决办法
11万
查看次数

标签 统计

file ×1

file-io ×1

pickle ×1

python ×1