我无法理解这两个 BytesIO 对象的区别。如果我这样做:
f = open('decoder/logs/testfile.txt', 'rb')
file = io.BytesIO(f.read())
decode(file,0)
然后在解码方法中这有效:
for line in islice(file, lines, None):
但是如果我像这样创建 BytesIO :
file = io.BytesIO()
file.write(b"Some codded message")
decode(file, 0)
然后在解码方法中循环不返回任何内容。我的理解是 BytesIO 应该像对象一样充当文件,但存储在内存中。那么为什么当我尝试只传递一行文件时,这个循环不会像文件中没有行一样返回任何内容?