: 라인 버퍼링이 성공하면라인 버퍼링는 MinGW/MSYS 파이썬에 실패 2.7.3 문제는이 간단한 스크립트에 의해 설명되어
import time, os, sys
sys.stdout = os.fdopen(sys.stdout.fileno(), 'w', 1) # line-buffer stdout
print 'before sleep'
time.sleep(10)
print 'after sleep'
는 다음 사이에 10 초 차이가있을 것입니다 두 줄의 인쇄. 그렇지 않다면 두 줄은 사실상 동시에 10 초 후 (파이썬이 시작되면) 동시에 나타납니다. 즉, 프로그램이 종료 될 때 라인이 인쇄됩니다.
Linux에서 "sys.stdout"라인이 포함되어 있으면 파일과 화면 모두에 라인 버퍼 동작이 나타납니다. 그 라인이 없으면 화면에 라인 버퍼링 된 동작이 있지만 파일에는 보이지 않습니다. 이것은 예상된다.
MSYS/MINGW 환경에서 "sys.stdout"줄을 생략하면 Linux와 동일한 동작을 볼 수 있습니다. 화면에는 줄 바꿈이 있지만 파일에는 줄 바꿈이 적용되지 않습니다. 이상한 무엇
는은 "sys.stdout"라인 , 나는 중 하나 화면 또는 파일에 라인 버퍼링을 볼 수 없다는 것입니다. 나는 리눅스에서와 같이이 둘 모두를 기대한다.
해결 방법을 제안 할 수 있습니까?
UNAME -a MINGW32_NT 6.0 FOO 1.0.11 (0.46/3/2) 2009-05-23 19시 33분는 i686 MSYS
: 여기
좀 더 정보의 고마워, -W.