찾다

 >  Q&A  >  본문

Python3 交互模式 next(文件) 之后 文件.tell() OSError 恢复的问题?

交互模式输入:

f = open( "Config.h", "r+", encoding="UTF-8" )
next(f)
f.tell()

这样会报错:

OSError: telling position disabled by next() call

原因可以理解
但是之后再在交互模式里输入 f.tell() 会报一样的错误
想来是 disabled by next() 还没被恢复
但是 f.seek 重设置一下之后 f.tell 就不会报错了
想问下具体细节是怎样的?
disabled by next() 如何被恢复的?
PS:呃,忘了说,是 Python3……
PS:我知道这是异常……

PHPzPHPz2786일 전1533

모든 응답(1)나는 대답할 것이다

  • 伊谢尔伦

    伊谢尔伦2017-04-17 17:26:31

    슬프네요, 드디어 제가 직접 해결했습니다...
    파일 io의 다음 소스 코드에서 플래그 비트를 설정합니다

    으아악

    플래그는 Tell에서 감지됩니다

    으아악

    seek는 플래그를 지웁니다(코드가 너무 분산되어 게시할 수 없음)
    자세한 내용은 소스 코드를 직접 찾아보세요...

    회신하다
    0
  • 취소회신하다