我想使用缓冲流,因为我想使用一种peek()
方法来窥视,但将我的流与另一种需要类似文件的对象的方法一起使用。(我会使用seek()
但可能必须处理不支持随机访问的管道输入 I/O。)
但是这个测试用例失败了:
AttributeError:“文件”对象没有属性“_checkReadable”
import sys
import io
srcfile = sys.argv[1]
with open(srcfile, 'rb') as f:
fbuf = io.BufferedReader(f)
print fbuf.read(20)
发生了什么事,我该如何解决?我认为 BufferedReader 旨在缓冲流。如果是这样,为什么该open()
函数不返回与其兼容的东西?