我正在尝试重构一个用于 python-3.x 的 python 2 包。该包在 python 2 下使用 StringIO.StringIO
并使用对象的相对搜索方法,使用 flob.seek(-1, 1)
等语句。不幸的是,python 3中对应的io.StringIO
对象的seek
方法不支持相对查找,所以代码引发
OSError: Can't do nonzero cur-relative seeks
尝试执行该语句时。
重构包含这些调用的模块的最佳方法是什么,如果我希望能够继续使用它出现在文件对象和(派生自)字符串中的函数?
最佳答案
因为 strings in Python 2 are renamed bytes in Python 3 , 代码应使用 io.BytesIO
在 Python 3 中,它支持相对搜索。
关于python - 在 python3 中相对寻找 io.StringIO,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19981996/