조금씩 꾸준히 완성을 향해

[Python] print() 함수 활용 (sep, end) 본문

Python/문법

[Python] print() 함수 활용 (sep, end)

all_sound 2022. 8. 24. 23:53

 

Print() 함수에서 꼭 기억해야할 두 가지 활용법이 있다.

 

 

▶ sep 

 

sep 은 seperator의 약자로,  print() 출력에서 값들 사이를 구분하는 구분자를 말한다. 

print(1, 2, 3, 4, 5, 6)  
# 1 2 3 4 5 6
print(1, 2, 3, 4, 5, 6, sep=' ') 
# 1 2 3 4 5 6

print() 함수로 출력을 할 때 구분자를 넣지 않는 경우가 더 많은데, 이 때  sep은 기본적으로 ' ' (한 칸 공백)으로 설정되어 있다.

즉, 값들 사이에 자동으로 한 칸 공백이 들어가서 출력이 되는 것이다. 

 

 

만약 값들을 공백 없이 붙여서 출력하고 싶을 때는 아래와 같이 sep안에 빈 문자열을 넣으면 된다.

print(1, 2, 3, 4, 5, 6, sep=' ')  
# 1 2 3 4 5 6
print(1, 2, 3, 4, 5, 6, sep='') 
# 123456

 

특정 구분자로 구분하기 위해서는 sep 안에 그 문자를 넣어주면 된다.

print(1, 2, 3, 4, 5, 6)   # 1 2 3 4 5 6
print(1, 2, 3, 4, 5, 6, sep=',')   # 1,2,3,4,5,6

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

 

 

▶ end

 

end는 print() 함수의 값을 출력 후 마지막에 붙는 문자열을 말한다. 

print('안녕하세요.') 
print('반갑습니다.')
'''
안녕하세요.
반갑습니다.
'''

print('안녕하세요.', end='\n')
print('반갑습니다.', end='\n')
'''
안녕하세요.
반갑습니다.
'''

 

위에서 보는 것과 같이 print() 함수에는 default 값으로 end='\n' (개행문자)가 지정되어 있다. 

그래서 end 값을 특별히 설정하지 않아도 자동으로 한 줄씩 나눠져서 출력되는 것이다.

 

 

이를 이용하면 print() 값을 수평으로 출력할 수 있고, 중간에 특정 문자를 넣을 수도 있다. 

print('안녕하세요.', end='  ')
print('반갑습니다.')
 #안녕하세요.  반갑습니다.

print('안녕하세요.', end='')
print('반갑습니다.')
 #안녕하세요.반갑습니다.

print('안녕하세요.', end='^___^ ')
print('반갑습니다.')
 #안녕하세요.^___^ 반갑습니다.