在 OSX 上的 Python 3.5.1 上运行:
import io
b = io.BytesIO()
b.write(b'222')
print(b.getvalue())
b.truncate(0)
b.write(b'222')
print(b.getvalue())
生产:
b'222'
b'\x00\x00\x00222'
所以截断BytesIO
以某种方式导致它开始在开头插入额外的零字节?为什么?
truncate
不移动文件指针。因此下一个字节被写入下一个位置。你还必须从头开始:
b.seek(0)
b.truncate()
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)