My Python Interpreter(v2.6.5)在以下代码中引发了上述错误:
fd = open("some_filename", "r")
fd.seek(-2, os.SEEK_END) #same happens if you exchange the second arg. w/ 2
data=fd.read(2);
最后一次通话是fd.seek()
Traceback (most recent call last):
File "bot.py", line 250, in <module>
fd.seek(iterator, os.SEEK_END);
IOError: [Errno 22] Invalid argument
这个奇怪的是,只有在执行我的整个代码时才会发生异常,而不是只有文件打开的特定部分。 在这部分代码的运行时,打开的文件肯定存在,磁盘未满,变量“iterator”包含正确的值,就像在第一个代码块中一样。 可能是我的错误?
提前致谢
答案 0 :(得分:5)
来自lseek(2)
:
EINVAL
不是SEEK_SET之一, SEEK_CUR,SEEK_END;或结果 文件偏移量为负数,或 超出可寻找设备的终点。
仔细检查iterator
的值。