반응형
질문
파이썬의 print
함수에서 버퍼링된 출력을 화면에 강제로 플러시하는 방법은 무엇인가요?
참고: 일반적으로 버퍼링 동작을 변경하려는 경우 출력 버퍼링 비활성화를 참조하세요. 이 질문은 여전히 출력이 버퍼링되고 있지만 특정 print
호출 후에 명시적으로 출력을 플러시하는 것에 대한 질문입니다.
중복 닫기에 대한 참고: 개행 문자를 사용하지 않고 출력을 즉시 표시하려는 초보자의 질문인 경우, 이 질문을 닫는 대신 개행 문자가 없을 때 출력이 즉시 터미널에 표시되지 않는 이유는 무엇인가요?를 사용하여 질문을 닫아주세요. 현재의 질문은 질문자가 버퍼링이나 플러싱에 대한 개념을 가지고 있지 않을 가능성이 높기 때문에 충분하지 않습니다. 다른 질문은 이러한 개념을 먼저 설명하기 위해 의도된 것이며, 이 질문은 기술적인 세부 정보에 대한 것입니다.
답변
파이썬 3에서는 print
가 선택적인 flush
인자를 사용할 수 있습니다:
print("Hello, World!", flush=True)
파이썬 2에서는 print
를 호출한 후에 다음을 수행합니다:
import sys
sys.stdout.flush()
기본적으로, print
는 sys.stdout
에 출력합니다(파일 객체에 대한 자세한 내용은 문서를 참조하십시오).
반응형
댓글