본문 바로가기
Python

Python - print 사용법

by DGK 2021. 10. 8.

 

인프런 파이썬 입문 수업을 듣고 중요한 내용을 정리했습니다.
개인 공부 후 자료를 남기기 위한 목적이므로 내용 상에 오류가 있을 수 있습니다.

 

print 사용법

 

  • 기본 출력
# 문자를 출력할 경우, 다양한 방법으로 출력이 가능하다.


print('Python Start!')

# 결과 : Python Start!(''로 감싸는 것이 가장 보편적인 방법)


print("Python Start!")

# 결과 : Python Start!


print('''Python Start!''')

# 결과 : Python Start!


print("""Python Start!""")

# 결과 : Python Start!

 

 

  • separator
# separator 옵션을 사용하면, parameter인 문자들을 특정 기호로 결합할 수 있다.


print('P','Y','T','H','O','N')

# 결과 : P Y T H O N


print('P','Y','T','H','O','N', sep='')

# 결과 : PYTHON


print('P','Y','T','H','O','N', sep=',')

# 결과 : P,Y,T,H,O,N


print('P','Y','T','H','O','N', sep='|')

# 결과 : P|Y|T|H|O|N


print('010', '1234', '5678', sep='-')

# 결과 : 010-1234-5678


print('python', 'google.com', sep='@')

# 결과 : python@google.com

 

 

  • end
# end 옵션을 사용하면, 특정 기호로 print문을 이어줄 수 있다.


print('Welcome to', end=' ')
print('IT News', end=' ')
print('Web Site')

# 결과 : Welcome to IT News Web Site

# end 옵션 없이 사용한 print문은 자동으로 줄바꿈이 되지만,
# end 옵션을 사용하면 특정 기호로 print문을 연결할 수 있다.

 

 

  • file
# file 옵션을 사용하면, print문의 내용을 외부의 저장공간에 파일로 사용할 수 있다.

import sys

print('Learn Python', file=sys.stdout)

# 추후에 자세히 다룰 예정

 

 

  • format
format에서 d는 정수, s는 문자열, f는 실수를 의미한다.

<활용 예시>
print('%s %s' % ('one', 'two'))

# 결과 : one two
# ('one', 'two')안에 있는 두 개의 문자열이 각각 %s에 들어간다.


print('{} {}'.format('one', 'two'))

# 결과 : one two
# 위와 동일하게 format의 paramater들이 각각 {}안에 들어간다.


print('{1} {0}'.format('one', 'two'))

# 결과 : two one
# 만약 {}안에 인덱스번호를 부여하면, 번호 순서에 따라 문자열이 들어간다.

 

 

  • format (%s)

문자열을 출력하는 방법은 아래와 같다.

print('%10s' % ('nice'))

# 결과 :      nice

# 문자열 4개와 공백 6개로 총 10개의 자리수를 채운다.(기본적으로 공백은 왼쪽부터 채움)
# 여기서 10s는 10자리의 문자열을 의미한다.


print('{:>10}'.format('nice'))

# 결과 :      nice

# 문자열 4개와 공백 6개로 총 10개의 자리수를 채운다.(10s에서 s는 생략 가능)
# :>10에서 >는 공백을 왼쪽부터 채운다는 의미이다.


print('%-10s' % ('nice'))

# 결과 : nice      

# 문자열 4개와 공백 6개로 총 10개의 자리수를 채운다.
# 단, -10s이면 공백을 오른쪽부터 채우고 10s이면 공백을 왼쪽부터 채운다.


print('{:10}'.format('nice'))

# 결과 : nice      

# 문자열 4개와 공백 6개로 총 10개의 자리수를 채운다.(10s에서 s는 생략 가능)
# :>10에서 >을 뺀 :10는 공백을 오른쪽부터 채운다는 의미이다.


print('{:$>10}'.format('nice'))

# 결과 : $$$$$$nice
# >10앞에 원하는 기호를 쓰면, 공백을 해당 기호로 채울 수 있다.


print('{:#>10}'.format('nice'))

# 결과 : ######nice
# >10앞에 원하는 기호를 쓰면, 공백을 해당 기호로 채울 수 있다.


print('{:_>10}'.format('nice'))

# 결과 : ______nice
# >10앞에 원하는 기호를 쓰면, 공백을 해당 기호로 채울 수 있다.


print('{:^10}'.format('nice'))

# 결과 :    nice   
# 10앞에 ^를 쓰면, 총 자리수안에서 문자열을 가운데정렬 할 수 있다.


print('%5s' % ('nice'))

# 결과 :  nice
# 문자열 4개와 공백 1개로 총 5개의 자리수를 채운다.

            
print('%5s' % ('pythonstudy'))

# 결과 : pythonstudy
# 문자열의 자리수(11개)가 총 자리수(5개)보다 많으면 문자열을 모두 출력한다.

     
print('%.5s' % ('pythonstudy'))

# 결과 : pytho
# 5s앞에 .을 사용하면 총 자리수만큼의 문자열만 출력한다.(총 자리수 5개, 문자열 11개)


print('{:10.5}'.format('pythonstudy'))

# 결과 : pytho
# 문자열을 5개만 출력하는 것은 동일하지만, 이 경우에는 총 자리수가 10개이다.(차이점)
# 즉, 총 자리수 10개 중, 문자열은 5개만 나오고 나머지는 5개는 공백으로 채워진다.

 

 

  • format (%d)
정수를 출력하는 방법은 아래와 같다.
print('%d %d' % (1,2))

# 결과 : 1 2


print('{} {}'.format(1,2))

# 결과 : 1 2


print('%4d' % (42))

# 결과 :   42
# 정수 2개와 공백 2개가 총 자리수 4개를 채운다.(기본적으로 공백은 왼쪽부터 채움)


print('%4d' % (4223131))

# 결과 : 4223131
# 정수의 자리수(7개)가 총 자리수(4개)보다 많으면 정수를 모두 출력한다. 


print('{:4d}'.format(42))

# 결과 :   42
# 정수 2개와 공백 2개가 총 자리수 4개를 채운다.(기본적으로 공백은 왼쪽부터 채움)
# 문자열과 달리, 정수는 :4d에서 d를 생략할 수 없다.

 

 

  • format(%f)
실수를 출력하는 방법은 아래와 같다.
print('%f' % (3.1234142124214))

# 결과 : 3.123414
# 실수의 모든 부분이 출력되지 않고, 정수부와 소수부 6자리만을 출력한다.


print('%1.8f' % (3.1234142124214))

# 결과 : 3.12341421
# %1.8f는 정수부 1자리, 소수부 8자리까지 출력한다는 의미이다.


print('%1.18f' % (3.1234142124214))

# 결과 : 3.123414212421399938
# %1.18f는 정수부 1자리, 소수부 18자리까지 출력한다는 의미이다.
# 단, 소수부는 13자리이기 때문에 나머지 5자리는 임의의 숫자로 채워진다.


print('{:f}'.format(3.1234142124214))

# 결과 : 3.123414
# print('%f' % (3.1234142124214))코드와 논리가 동일하며,
# 실수의 모든 부분이 출력되지 않고 정수부와 소수부 6자리만을 출력한다.


print('%06.2f' % (3.1432434342423423))

# 결과 : 003.14
# %06.2f는 총 자리수 6개, 소수부 자리수 2개를 의미하며
# 소수부와 정수부 그리고 .을 제외한 나머지 자리수를 0으로 채운다.
# 여기서 소수부 2개, 정수부 1개, . 1개이므로 나머지 2자리는 0으로 채워진다.


print('{:06.2f}'.format(3.1432434342423423))

# 결과 : 003.14
# print('%06.2f' % (3.1432434342423423))코드와 논리는 동일하다.


print('%08.3f' % (44.23424234))

# 결과 : 0044.234
# %08.3f는 총 자리수 8개, 소수부 자리수 3개를 의미하며
# 소수부와 정수부 그리고 .을 제외한 나머지 자리수를 0으로 채운다.
# 여기서 소수부 3개, 정수부 2개, . 1개이므로 나머지 2자리는 0으로 채워진다.

'Python' 카테고리의 다른 글

Python - 기초 자료형(튜플)  (0) 2021.10.13
Python - 기초 자료형(리스트)  (0) 2021.10.13
Python - 기초 자료형(문자형)  (0) 2021.10.13
Python - 기초 자료형(숫자형)  (0) 2021.10.11
Python - 변수  (0) 2021.10.11

댓글