• 회원가입
  • 로그인
  • 구글아이디로 로그인

[string] Python - format() 메서드 ★★ - 포맷된 문자열 삽입. (= format메서드 = 포맷) ※ 숫자 자릿수

3044  
format() 예제 - 소수점 2자리까지 표현.

 

txt = "{price:.2f} 달러."

print(txt.format(price = 43))

 

결과보기: 43.00 달러.

 

format() 정의

 

문자열 안 지정 값을 포맷 후, 해당 Placeholder(자료표시자)에 넣음.

※ Placeholder는 중괄호 {} 사용해 표현. (※ 아래 설명서 참고)

※ format() 메서드는 형식 변경된 문자열을 반환.

 


cf.

format_map() 메서드

 

 

format() 구문

 

string.format(value1, value2...)

 


[매개변수]

 

value1, value2...

필수. 형식 변경되어 자리표시자에 들어가야 할 값들.

 

※ value는 제거할 요소의 위치를 지정하는 숫자일 수 있음.

 

※ value 유형 종류.

① 쉼표로 구분된 값 목록

② key = value 목록

③ 위 두 방법의 조합.

 

※ value는 모든 데이터 유형 가능.

 

 

Placeholder (자리표시자)

 

자리표시자는 {} 안에 '이름' , '숫자' , '빈 공백' 넣어 표시.

(예) {name}, {0}, {}

 


[예제]

 

hz1 = "{site}, {host}".format(site = "홈짱닷컴", host = "Homzzang.com")

hz2 = "{0}, {1}".format("홈짱닷컴","Homzzang.com")

hz3 = "{}, {}".format("홈짱닷컴","Homzzang.com")


print(hz1) # 홈짱닷컴, Homzzang.com

print(hz2) # 홈짱닷컴, Homzzang.com

print(hz3) # 홈짱닷컴, Homzzang.com

 


format() 타입

:<   :  왼쪽 정렬 (사용 가능한 공간 내)

 

# 값 자리를 8자리 설정 후, 왼쪽 정렬.

hz = "홈짱닷컴 Homzzang.com {:<8} 오픈."

print(hz.format(2012))

 

결과값: 홈짱닷컴 Homzzang.com 2012     오픈.


:>   :  오른쪽 정렬 (사용 가능한 공간 내)

 

# 값 자리를 8자리 설정 후, 오른쪽 정렬.

hz = "홈짱닷컴 Homzzang.com {:>8} 오픈."

print(hz.format(2012))

 

결과값: 홈짱닷컴 Homzzang.com     2012 오픈.


:^   :  가운데 정렬 (사용 가능한 공간 내).

 

# 값 자리를 8자리 설정 후, 가운데 정렬.

hz = "홈짱닷컴 Homzzang.com {:^8} 오픈."

print(hz.format(2012))

 

결과값: 홈짱닷컴 Homzzang.com   2012   오픈.


:=   :  기호를 가장 왼쪽에 배치.

 

# 값 자리를 8자리 설정 후, 부호를 가장 왼쪽에 배치.

txt = "현재 온도: {:=8} 도"

print(txt.format(-5))

 

결과값: 현재 온도: -      5 도.


:+  :  양수에 + 기호 추가.

 

txt = "가능값: {:+} ~ {:+}"

print(txt.format(-3, 4))

 

결과값: 가능값: -3 ~ +4


:-   :  음수만 - 기호 표시. (※ 양수에 + 기호 사용 X)

 

txt = "가능값: {:-} ~ {:-}"

print(txt.format(-3, 4))

 

결과값: 가능값: -3 ~ 4


:    :  양수는 앞에 공백 삽입. (※ 음수는 - 기호 삽입.)

txt = "가능값: {: } ~ {: }"

print(txt.format(-3, 4))

 

결과값: 가능값: -3 ~  4


:,    :  쉼표로 천 단위 구분. ★

 

txt = "수입: {:,} 원"

print(txt.format(1000000))

 

결과값: 수입: 1,000,000 원


: _  :  천 단위 구분 기호로 밑줄 사용.

 

txt = "수입: {:_} 원"

print(txt.format(1000000))

 

결과값: 수입: 1_000_000 원


:b   :  바이너리 형식

 

txt = "십진수 {0} = 이진수 {0:b}"

print(txt.format(5))

 

결과값: 십진수 5 = 이진수 101


:c   :  값을 해당 유니코드 문자로 변환.

 

예제 준비 중.

 


:d   :  10 진수 형식

 

# 이진수 5를 십진수로 변환.

txt = "이진수 101 = 십진수 {:d}"

print(txt.format(0b101))

 

결과값: 이진수 101 = 십진수 5


:e   :  소문자 e 사용 과학적 표기법.

 

txt = "5 지수표기법: {:e}"

print(txt.format(5))

 

결과값: 5 과학표기법: 5.000000e+00


:E  :  대문자 E 사용 과학적 표기법.

 

txt = "숫자 5의 과학표기법: {:E}"

print(txt.format(5))

 

결과값: 숫자 5의 과학표기법: 5.000000E+00


:f    :  소수점 표시. (소문자 inf, nan 사용.) ※ 기본: 6자리

 

# 소수점 2자리

txt = "{:.2f}"

print(txt.format(34)) # 34.00

 

# 소수점 6자리 (기본값 사용)

txt = "{:f}"

print(txt.format(34)) # 34.000000

 

# 소수점 포함 전체 10자리인데, 그 중 소수점은 3자리 차지.

n = 12.34

print("{:10.3f}".format(n)) #     12.340

 

# 소문자 inf (무한대 = 1/0)

x = float('inf')

txt = "{:f}"

print(txt.format(x)) # inf

 


:F  :  소수점 표시. (대문자 INF, NAN 사용.) ※ 기본: 6자리

 

# 소수점 2자리

txt = "{:.2F}"

print(txt.format(34)) # 34.00

 

# 소수점 6자리 (기본값 사용)

txt = "{:F}"

print(txt.format(34)) # 34.000000

 

# 소수점 포함 전체 10자리인데, 그 중 소수점은 3자리 차지.

n = 12.34

print("{:10.3F}".format(n)) #     12.340

 

# 대문자 INF (무한대 = 1/0)

x = float('inf')

txt = "{:F}"

print(txt.format(x)) # INF

 


:g   :  일반 형식

 

예제 준비 중.

 


:G  :  일반 형식 (과학적 표기법에 대문자 E 사용)

 

예제 준비 중.

 


:o   :  8 진수 형식

 

txt = "십진수 {0} = 팔진수 {0:o}"

print(txt.format(10))

 

결과값: 십진수 10 = 팔진수 12


:x   :  16 진수 형식 (소문자 사용)

 

txt = "10진수 {0} = 16진수 {0:x}"

print(txt.format(255))

 

결과값: 10진수 255 = 16진수 ff


:X   :  16 진수 형식 (대문자 사용)

 

txt = "10진수 {0} = 16진수 {0:X}"

print(txt.format(255))

 

결과값: 10진수 255 = 16진수 FF

 


:n   :  숫자 형식

 

예제 준비 중.

 


:%  :  백분율 형식

 

# 소수점 있는 백분율 (기본: 6자리)

txt = "{:%}"

print(txt.format(0.25)) # 25.000000%


# 소수점 없는 백분율

txt = "{:.0%}"

print(txt.format(0.25)) # 25%

 

 

format() 예제 - 문자열 포맷

 

a = 3

b = 4

print("{} * {} = {}".format(a,b,a*b))

 

결과값: 3 * 4 = 12


[예제] 소수점 자릿수 맞추기.

 

a = 3

b = 4

print("{} * {:.3f} = {:.3f}".format(a,b,a*b))

 

결과값: 3 * 4.000 = 12.000 


[예제] 소수점 포함 전체 10자리인데, 그 중 소수점은 3자리 차지.


a = 12.34

print("{:10.3f}".format(a))

 

결과값:    12.340

 

PS. 주의 

전체자릿수 숫자는 지정 소수점 자릿수로 숫자를 다 표현할 수 있을 때만 유효.

즉,

위 예제 경우. (정수 2자리 + 소수점 + 소수점 이하 3자리) 표시 위해 최소 6자리 공간이 필요한데, 6미만의 숫자를 전체 자릿수로 지정할 경우 이 숫자는 무시되고 소수점 이하 자릿수 지정만 유효하게 됨. 그 결과 결과값은 12.340 됨.

(예)

a = 12.34

print("{:5.3f}".format(a)) # 12.340

 



분류 제목
set Python - set.isdisjoint() 메서드 - 두 Set의 공통요소 유무 체크. (= isdisj…
set Python - set.issubset() 메서드 - 서브 Set인지 체크. (= issubset메서드 = …
set Python - set.issuperset() 메서드 - 수퍼 Set인지 체크. (= issuperset메서…
set Python - set.pop() 메서드 ★ - Set에서 요소 랜덤 제거 후, 제거된 요소 반환. (= p…
set Python - set.remove() 메서드 ★ - Set에서 지정요소 제거. (= remove메서드 = …
set Python - set.symmetric_difference() 메서드 - Set의 공통요소 제외한 결합 S…
set Python - set.symmetric_difference_update() 메서드 - Set의 공통요소 제…
set Python - set.union() 메서드 ★ - 중복 시 한번만 포함해 Set 결합. (=셋 합치기 u…
set Python - set.update() 메서드 - 두 Set을 결합해 기존 set을 수정. (= update…
file Python - File Method - 파일메서드 종류
file Python - close() 메서드 ★★★ - 열린 파일 닫기. (= close메서드 = 클로즈 메서드)
file Python - detach() 메서드 △ - 버퍼에서 분리된 원시 스트림 반환. (= detach메서드 =…
file Python - fileno() 메서드 - 스트림의 파일 설명자를 숫자로 반환. (= fileno메서드 = …
file Python - flush() 메서드 ★ - 버퍼 비우기/정리. (= flush메서드 = 플러시메서드)
file Python - isatty() 메서드 - 파일 스트림이 상호대화형인지 체크. (= isatty메서드)
file Python - read() 메서드 ★★★ - 파일 읽기. (= read메서드 = 리드 메서드)
file Python - readable() 메서드 ★ - 파일 읽기 가능 여부 체크. (= readable메서드 =…
file Python - readline() 메서드 ★ - 파일 한 줄 읽기. (= readline메서드 = 리드라인…
file Python - readlines() 메서드 ★ - 파일 읽기 후, List 객체 반환. (= readlin…
file Python - seek() 메서드 ★ - 파일의 출력 시작점 설정. (= seek메서드 = 시크 메서드)
13/24
목록
찾아주셔서 감사합니다. Since 2012