문자열 뒤에 마침표(.)를 찍으면 문자열에서 사용할 수 있는 함수가 여러 개 나온다.
이 중 format( )함수에 대해 정리해보겠다.
(출력결과는 print( )함수로 출력했을때의 결과이다.)
문자열 format( ) 함수
"{}".format(10)
"{} {}".format(10, 20)
"{} {} {}".format(10, 20, 30)
중괄호{ }가 포함된 문자열 뒤에 마침표를 찍고 사용할 수 있다.
format( )함수에 숫자를 넣으면 이 숫자를 { }안에 넣을때 문자열로 만들어준다.
사용하려면 중괄호 개수와 format()안에 넣는 인자 개수가 같아야한다.
코드가 복잡해보이지만 그냥 괄호 안의 숫자를 대괄호 위치에 차례대로 넣어주는 역할이다.
format( )함수의 기능 1
#1 정수
output_a = "{:d}".format(52) #결과 :52
#2 특정 칸에 출력
output_b = "{:5d}".format(52) #결과 : 52 (5칸 빈 칸으로 출력된 뒤에 나옴)
output_c = "{:10d}".format(52) #결과 : 52
#3 빈칸을 0으로 채우기
output_d = "{:05d}".format(52) #결과 : 00052
output_e = "{:05d}".format(-52) #결과 : 00-52
format( )함수로 숫자를 다양한 방법으로 출력이 가능하다.
1. 숫자를 정수로 출력
2. 숫자를 특정 칸에 출력
3. 숫자를 특정 칸에 출력하되, 나머지 빈칸을 0으로 채우면서 출력
예는 위 코드를 보면 알 수 있다.
format( )함수의 기능 2
output_f = "{:+d}".format(52) # 출력결과 : +52
output_g = "{:+d}".format(-52) # 출력결과 : -52
output_h = "{: d}".format(52) # 출력결과 : 52
output_i = "{: d}".format(-52) # 출력결과 : -52
1,2 d앞에 +를 추가하면 양수의 경우 +를 붙여서 출력해준다.
3,4 d앞에 공백을 추가하면 양수의 경우 공백을 추가해준다.
둘 다 양수일때 적용되는 기능이다.
특정 경우에만 필요할 것 같아서 잘 안쓰일 것 같다.
추가로 특정 칸에 출력하는 기능과 혼합하여 사용이 가능하다.
"{:+5d}".format(52)이런식으로도 사용이 가능하며 ' +52'와 같이 출력된다.
"{:=+5d}".format(52)와 같이 등호를 붙인다면 '+ 52'와 같이 기호만 앞으로 빼준다.
format( )함수의 기능 3
output_a = "{:f}".format(52.273) #출력결과 : 52.27300
output_b = "{:15f}".format(52.273) #출력결과 : 52.273000
output_c = "{:+15f}".format(52.273) #출력결과 : +52.273000
output_d = "{:+015f}".format(52.273) #출력결과 : +0000052.273000
output_e = "{:15.3f}".format(52.273) #출력결과 : 52.273
부동 소수점 float형 버전이다.
정수는 decimal의 d, 부동 소수점은 float의 f를 사용하는 차이일 뿐이다.
뒤에 소수점을 제한하는 예시는 output_e의 결과를 참고!
format( )함수의 기능 4
output_a = 52.0 #출력결과 52.0
output_b = "{:g}".format(output_a) #출력결과 52
의미없는 소수점 0을 제거하려면 {:g}를 사용한다.
52.0처럼 의미없는 소수점을 지우면 자료형이 float에서 int로 바뀌게 된다.
이번 포스팅에서는 파이썬의 format( )함수를 기록해 보았다.
거의 쓸 일 없을 것 같지만 나중에 필요하면 보러 올 생각이다
'자기계발 > Python' 카테고리의 다른 글
[Python] 기본6. elif구문 (0) | 2022.02.26 |
---|---|
[Python] 기본5. 날짜/시간 활용과 if()함수 (0) | 2022.02.26 |
[Python] 기본3. input() 함수로 데이터 입력받기 (0) | 2022.02.23 |
[Python] 기본2. 인덱싱과 슬라이싱 (0) | 2022.02.22 |
[Python] 기본1. 식별자 (0) | 2022.02.22 |