11-09 09:15
Notice
Recent Posts
Recent Comments
관리 메뉴

BAN2ARU

[Python] print() - sep, end, file (print로 텍스트 파일 출력하기) 본문

Language/Python

[Python] print() - sep, end, file (print로 텍스트 파일 출력하기)

밴나루 2022. 4. 25. 21:30
반응형

print()는 출력하기위한 함수로, 우리가 흔히 쓰고 보았던 Hello worlds를 출력하기 위해 print("Hello worlds")에서 사용되는 함수입니다.

print()의 옵션에서는 sep와 end 옵션을 활용하여 출력시에 보다 원하는 모양으로 나오도록 출력할 수 있습니다.

또한 file 옵션을 통해 print함수를 출력할 것인지 아니면 파일로 저장할 것인지도 선택할 수 있습니다.

 

print default옵션은 sep = ' ' (공백), end = '\n' (띄어쓰기), file = sys.stdout (콘솔 출력) 입니다.

 

각 옵션에 대해 예제와 함께 살펴보도록 하겠습니다.

 

sep

# 일반적으로 아무 옵션을 주지 않으면 공백으로 출력됨
>>> print('Apple', 'Banna')
Apple Banna

# sep 옵션으로 ,를 주게 된다면 다음과 같음
>>> print('Apple', 'Banna', sep=',')
Apple,Banna

end

# 기존에는 print 함수를 다시 쓰게되면 띄어쓰기(\n)로 구분됨
>>> print('apple')
>>> print('banna')
apple
banna
# 만약 end option에서 공백을 주게 된다면 다음과 같음
>>> print('apple', end=' ')
>>> print('banna')
apple banna
# 다음과 같이도 활용 가능함
>>> print('apple', end=' ')
>>> print('banna', end=',')
>>> print('fruit')
apple banna,fruit

file

기존에는 소스코드에서 print()를 활용하면 콘솔에 입력되게 된다. 근데 만약 print의 출력값을 콘솔이 아닌 특정 txt file에 출력하고 싶으면 다음과 같이 사용하면 된다.

f = open('fruit.txt', 'w')
print('apple', 'banna', sep=',', file=f)
f.close()

 

그러면 다음과 같이 메모장에 입력이 되어있는 것을 확인할 수 있다.

 

만약, 콘솔과 file 입력을 동시에 하고 싶다면 logger를 활용하는것을 추천하며, logger에 대한 내용도 다음에 다룰 수 있도록 하겠다. 또한, print에 format 및 f-string(formated string literal)을 활용하여 출력하는 방식에 대해서도 다음에 다루도록 하겠다.

728x90
Comments