매개 변수 전달 방법
기본 구문은 {} 및 :를 사용하여 이전 %를 대체하는 것입니다.
>>> "output {:.2f}".format(3.1415926)
'output 3.14'
>>> "output %.2f" % 3.1415926
'output 3.14'
형식 함수는 무제한의 매개 변수를 허용 할 수 있으며 위치가 순서가 맞지 않을 수 있습니다.
>>> "{} {}".format("hello", "world") # 不设置指定位置,按默认顺序
'hello world'
>>> "{0} {1}".format("hello", "world") # 设置指定位置
'hello world'
>>> "{1} {0} {1}".format("hello", "world") # 设置指定位置
'world hello world'
매개 변수를 설정할 수도 있습니다.
>>> "name: {name}, address: {address}".format(name="Looking", address="somewhere")
'name: Looking, address: somewhere'
>>> my_dict = {"name": "Looking", "address": "somewhere"}
>>> "name: {name}, address: {address}".format(**my_dict)
'name: Looking, address: somewhere'
>>> my_list = ["Looking", "somewhere"]
>>> "name: {0[0]}, address: {0[1]}".format(my_list)
'name: Looking, address: somewhere'
>>> my_list = ["Looking", "somewhere"]
>>> "name: {0}, address: {1}".format(*my_list)
'name: Looking, address: somewhere'
사실, 파이썬 3.6 이후의 새로운 f- 문자열도 매우 인기가 있고 사용하기도 매우 편리합니다.
>>> name = "Looking"
>>> address = "somewhere"
>>> "name: {name}, address: {address}"
'name: {name}, address: {address}'
>>> f"name: {name}, address: {address}"
'name: Looking, address: somewhere'
>>> my_dict = {"name": "Looking", "address": "somewhere"}
>>> f"name: {my_dict['name']}, address: {my_dict['address']}"
'name: Looking, address: somewhere'
>>> my_list = ["Looking", "somewhere"]
>>> f"name: {my_list[0]}, address: {my_list[1]}"
'name: Looking, address: somewhere'
숫자 서식
^, <,>은 각각 뒤쪽에 너비가있는 가운데, 왼쪽 정렬, 오른쪽 정렬이며 : 기호 뒤에 패딩이있는 문자는 한 문자 만 가능합니다. 지정하지 않으면 채워집니다. 기본적으로 공백이 있습니다.
+ +를 양수 앞에, 음수 앞에 표시하는 것을 의미합니다. (공백)은 양수 앞에 공백을 추가하는 것을 의미합니다.
b, d, o 및 x는 각각 2 진수, 10 진수, 8 진수 및 16 진수입니다.
소수점 두 자리 유지
>>> "output {:.2f}".format(3.1415926)
'output 3.14'
소수점 두 자리를 유지하도록 서명
>>> "output {:+.2f}".format(3.1415926)
'output +3.14'
>>> "output {:+.2f}".format(-3.1415926)
'output -3.14'
소수 없음 (반올림으로 이해 가능)
>>> "output {:.0f}".format(3.1415926)
'output 3'
>>> "output {:.0f}".format(-3.1415926)
'output -3'
>>> "output {:.0f}".format(2.71828)
'output 3'
>>> "output {:.0f}".format(-2.71828)
'output -3'
숫자 0 패딩 (오른쪽 정렬, 왼쪽 패딩, 너비 3)
>>> "output {:0>3d}".format(3)
'output 003'
공백 패딩 (오른쪽 정렬, 왼쪽 패딩, 너비 3)
>>> "output {: >3d}".format(3)
'output 3'
숫자 0 패딩 (왼쪽 정렬, 오른쪽 패딩, 너비 3)
>>> "output {:0<3d}".format(3)
'output 300'
공백 패딩 (왼쪽 정렬, 오른쪽 패딩, 너비 3)
>>> "output {: <3d}".format(3)
'output 3 '
쉼표로 구분 된 숫자 형식
서방 국가의 천분의 일 스타일에 따라
>>> "output {:,}".format(300000000000)
'output 300,000,000,000'
백분율 형식
>>> "output {:.2%}".format(0.25)
'output 25.00%'
>>> "output {:.3%}".format(0.25)
'output 25.000%'
색인 서식
>>> "output {:.2e}".format(2500000)
'output 2.50e+06'
정렬 (왼쪽, 가운데, 오른쪽)
>>> "output {: <9d}".format(3)
'output 3 '
>>> "output {: ^9d}".format(3)
'output 3 '
>>> "output {: >9d}".format(3)
'output 3'
기본 변환
>>> "output {:b}".format(11) # 二进制
'output 1011'
>>> "output {:o}".format(11) # 八进制
'output 13'
>>> "output {:d}".format(11) # 十进制
'output 11'
>>> "output {:x}".format(11) # 十六进制(小写)
'output b'
>>> "output {:X}".format(11) # 十六进制(大写)
'output B'