많은 프로그래밍 시나리오에서는 터미널에 표시되는 출력을 수정하거나 업데이트해야 합니다. 이 기사에서는 이전 인쇄를 stdout에 덮어쓰고 같은 줄의 업데이트된 값으로 바꾸는 방법을 살펴봅니다.
Python은 다음을 제공합니다. r(캐리지 리턴) 문자를 사용하면 커서를 다음 줄로 이동하지 않고 현재 줄의 시작 부분으로 다시 이동할 수 있습니다. r을 사용하면 이전 인쇄 문을 덮어쓸 수 있습니다.
# Python 3 for x in range(10): print(x, end='\r') print() # Python 2.7 from __future__ import print_function for x in range(10): print(x, end='\r') print()
Python 2에서는 인쇄 문 끝의 쉼표 print 문의 끝이 있으면 다음 줄로 넘어가는 것이 방지됩니다. 덮어쓰기:
# Python 2 for x in range(10): print '{0}\r'.format(x), print
새 텍스트 줄이 이전 줄보다 짧으면 x1b[1K(줄 끝까지 지우기)를 사용하여 나머지를 지울 수 있습니다. 문자:
for x in range(75): print('*' * (75 - x), x, end='\x1b[1K\r') print()
기본적으로 Python은 터미널 너비를 초과하는 줄을 줄 바꿈합니다. 이를 방지하고 연속 문자가 이전 줄을 덮어쓰도록 하려면 x1b[7l:
print('\x1b[7l', end='') # Disable line wrapping for x in range(50): print(x, end='\r') print('\x1b[7h', end='') # Re-enable line wrapping
참고: 줄 바꿈을 비활성화한 후 항상 줄 바꿈을 다시 활성화하여 떠나지 않도록 하세요. 단말기가 망가진 상태입니다.
위 내용은 Python에서 이전 출력을 표준 출력(Stdout)으로 덮어쓰려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!