취뽀 기록

#열심히 살자 #취업 #공부

Python

[python] 문자열 변환_함수 format( )

hyunnn_00 2023. 6. 12. 11:11

함수 format( ) : 값을 순차적으로 할당해줌

-> 중괄호 { } 를 큰 따옴표 " " 로 묶어준 다음 마침표로 연결시켜 사용 가능

 

ex)

 str = “{}”.format(23); print(str); print(type(str))
실행결과: 23 <classstr’>
※ format( ) 유의점
format 함수 안에 있는 값이 중괄호 안으로 들어감

 

■  정수형 숫자를 문자열로 변환 

a = "{:d}".format(23) # 정수
b = "{:5d}".format(23) # 자리수 & 남은 자리를 빈칸으로 채움
c = "{:05d}".format(23) # 자리수 & 남은 자리를 0으로 채움
d = "{:05d}".format(-23) # -는 자리 수를 차지한다.

print(a) 결과값:23 / print(b) 결과값: 23 / print(c) 결과값:00023 / print(d) 결과값:-0023

 

a = "{:+d}".format(23) # 양수 기호와 함께 출력
b = "{:+d}".format(-23) # 음수 = 음수는 무조건 - 기호 동반!
c = "{: d}".format(23) # 양수 기호를 생략해서 출력
d = "{: d}".format(-23) # 음수 = 음수는 무조건 - 기호 동반!

print(a) 결과값: +23 / print(b) 결과값: -23 / print(c) 결과값: 23 / print(d) 결과값: -23

 

a = "{:+5d}".format(23) # 자리 수 & 숫자 바로 앞에 기호 생성
b = "{:+5d}".format(-23)
c = "{:=+5d}".format(23) # 자리 수 & 맨 앞에 기호 생성 & 남아있는 자리는 공백
d = "{:=+5d}".format(-23)
e = "{:=+05d}".format(23) # 자리수 & 맨 앞에 기호 생성 & 남아있는 자리는 0으로 채움
f = "{:=+05d}".format(-23)

# 코드 한 줄에 간결하게 작성하는 방법 = 세미콜론 사용
# 프로그래밍 언어에서 '세미콜론'은 아직 끝나지 않았다라는 의미로 인식된다.

print(a) ; print(b) ; print(c) ; print(d) ; print(e) ; print(f)
결과값: +23 -23 + 23 - 23 +0023 -0023

 

실수형 숫자를 문자열로 반환

a = "{:f}".format(23.45) # 실수 print(a) 결과값: 23.450000
b = "{:15f}".format(23.45) # 자리 수 & 남은 자리를 빈칸으로 채움 print(b) 결과값: 23.450000
c = "{:+15f}".format(23.45) # 자리 수 & 한 자리 + 기호 & 남은 자리를 빈칸으로 채움

print(c) 결과값: +23.450000

d = "{:+015f}".format(-23.45) # 자리 수 & 한 자리 - 기호 & 빈 자리를 0으로 채움

print(d) 결과값: -0000023.450000
# 실수형은 소수점 이하 default value = 6

 

a = "{:15.3f}".format(23.456)
b = "{:15.2f}".format(23.456) # 소수점 셋째 자리에서 반올림
c = "{:15.1f}".format(23.456)
d = "{:15.5f}".format(23.456) # 소수점 자리가 남는 경우에는 0으로 대체

# 소수점 자리 숫자가 줄어든만큼 공백으로 대체
# 헷갈리지 않기! "{:내가 표현하고 싶은 소수점자리 수까지}" ; 실제 표현될 때는 그 자리 +1 에서 반올림
# 예) 소수점 둘째자리까지 표현하고 싶다? → 중괄호 안에 숫자 '2' 입력 (실제로 구동될 때는 셋째 자리에서
반올림해서 둘째 자리까지 표현)

e = "{:15.1f}".format(23.45) 결과값: 23.4
f = "{:15.1f}".format(23.46) 결과값: 23.5

 


의미 없는 소수점 제거 

# 의미없는 소수점? (예) 23.450 ; 23.45와 같은 값으로 사실상 '0'은 의미없는 소수점
# 이때 의미없는 소수점을 제거하기 위해서는 'f'가 아닌 'g'를 사용하면 된다.

a = "{:g}".format(23.450) 결과값: 23.45
b = "{:g}".format(23.40) 결과값: 23.4
c = "{:g}".format(23.0) 결과값: 23

 

  f 문자열

# format 함수 사용법 : "{}".format( )
# f 문자열 사용법: f"{ }"

print("{}".format(23)) 결과값: 23
print(f"{23}") 결과값: 23
print("{}".format(2 + 3)) # format 함수 안에서 사칙연산이 가능
print(f"{2 + 3}") 결과값은 5로 동일하다.