f.seek(0,SEEK_END)以NoneType形式出现

时间:2015-03-12 18:00:47

标签: python-2.7 python-3.x seek fseek

我有一些为Python 3编写的代码,我试图使Python 2.7兼容。在Python 3中,代码f.seek(0, SEEK_END)返回320816但在Python 2中,相同的代码返回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

1 个答案:

答案 0 :(得分:2)

您正在使用open()在2.7中打开文件,但这不会返回seek()方法返回新文件指针位置的文件对象。请改用io.open()