Python의 기본 동작은 출력을 버퍼링하는 것입니다. 즉, 텍스트를 터미널로 보내기 전에 임시 공간에 텍스트를 저장합니다. 이는 필요한 시스템 호출 수를 줄여 성능을 향상시키기 위한 것입니다.
문자 끝에 개행(n)이 포함되지 않은 경우 print 문이나 함수 호출 시 텍스트는 버퍼에 보관됩니다. 줄바꿈이 발생하거나 버퍼가 가득 찬 경우에만 텍스트가 플러시되어 터미널에 표시됩니다.
Python 2.x에서는 print 문에 플러시 인수가 없습니다. 줄 바꿈을 추가하지 않고 버퍼를 플러시하려면 다음 접근 방식을 사용할 수 있습니다.
import sys for i in range(10): print '.', sys.stdout.flush()
Python 3.x에서 인쇄 함수에는 플러시 키워드 인수가 포함됩니다.
for i in range(10): print('.', end=' ', flush=True)
< ;h3>라인 버퍼링 비활성화
개행에 관계없이 즉시 인쇄가 필요한 시나리오의 경우 존재 여부에 따라 라인 버퍼링을 완전히 비활성화할 수 있습니다. 이는 다음을 사용하여 달성할 수 있습니다:
버퍼링을 비활성화하면 줄바꿈이나 명시적 사용 없이 모든 인쇄 호출이 터미널에 즉시 표시됩니다. 플러싱.
위 내용은 줄 바꿈 없이 인쇄 출력이 터미널에 즉시 나타나지 않는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!