f.seek(0, SEEK_END) 出现为 NoneType
f.seek(0, SEEK_END) coming up as NoneType
我有一些为 Python 3 编写的代码,我试图使 Python 2.7 兼容。在 Python 3 中,代码 f.seek(0, SEEK_END)
returns 320816 但在 Python 2 中,代码相同 returns None
。当我打印我感兴趣的文件部分时,我得到了一堆 b'NEUEVLBL\x90\x00ainp16\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'
形式的行,这让我相信这个错误与 Python 2.7 阅读这个作为常规字符串而不是字节文字,可能与 Python 2.7 使用 \
作为转义字符有关(在 Python 3 中不是这种情况)。有人有什么建议吗?
编辑:在任何人建议之前,是的,我已经尝试过 3to2
您正在使用 open()
在 2.7 中打开文件,但这不会 return 其 seek()
方法 return 新文件指针的文件对象地点。请改用 io.open()
。
我有一些为 Python 3 编写的代码,我试图使 Python 2.7 兼容。在 Python 3 中,代码 f.seek(0, SEEK_END)
returns 320816 但在 Python 2 中,代码相同 returns None
。当我打印我感兴趣的文件部分时,我得到了一堆 b'NEUEVLBL\x90\x00ainp16\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'
形式的行,这让我相信这个错误与 Python 2.7 阅读这个作为常规字符串而不是字节文字,可能与 Python 2.7 使用 \
作为转义字符有关(在 Python 3 中不是这种情况)。有人有什么建议吗?
编辑:在任何人建议之前,是的,我已经尝试过 3to2
您正在使用 open()
在 2.7 中打开文件,但这不会 return 其 seek()
方法 return 新文件指针的文件对象地点。请改用 io.open()
。