본문 바로가기
개발/Python

[파이썬, Python] 한 줄에 여러 print 출력하기

by 꾀돌이 개발자 2022. 4. 4.
반응형

 

[ 파이썬 한 줄에 여러 print 출력하기 ]

 

 

필요성

  • for, while 등의 반복문을 사용할 때, 진행상황을 알기 위해 print 함수를 사용하는 경우가 많습니다.
  • 하지만 수 백, 수 천번 이상 반복하는 반복문일 경우 지나치게 많은 print 출력값이 발생할 수 있으며,
  • 이를 해결하기 위해 캐리지 리턴을 사용하여 깔끔하게 한 줄로 print 하는 방법을 소개합니다.

 


캐리지 리턴(carriage return, CR) : \r

  • 커서의 위치를 맨 앞으로 이동하라는 의미를 갖습니다.
  • 파이썬을 포함한 다양한 언어에서 '\r' 로 표현됩니다.
  • 'abcde\r123' 의 경우 'abcde' 를 입력한 뒤 '\r' 으로 인해 커서를 다시 맨 앞으로 옮기고 '123'을 다시 입력합니다.
print('abcde\r123') # 출력값 : 123

 


코드 : print(values, ... , end = '\r')

  • print 의 경우 end 인자의 기본값이 개행을 의미하는 '\n' 이므로 print 를 출력하면 커서를 다음 줄로 옮깁니다.
  • printend 인자에 '\r' 을 넣어줌으로써 print 를 출력할 때마다 커서를 다시 맨 왼쪽으로 이동시킬 수 있습니다.
  • 이를 통해 반복문 속에서 print 를 실행할 때 화면을 깔끔하게 유지할 수 있습니다.
import time

# end 에 캐리지 리턴('\r') 을 입력함
for i in range(10):
    print('현재 출력값은 %i 입니다.' % i, end='\r')
    time.sleep(1)

 

< end 설정을 안 했을 때 >

end 인자를 default 값으로 했을 때

 

< end 인자를 '\r' 으로 설정했을 때 >

end 인자를 '\r' 으로 설정했을 때

 

 

반응형