Overview

String Formatting(문자열 포멧팅)을 잘 활용한다면 결과를 더 명확하고 전문적으로 전달할 수 있으며, 반복 작업을 자동화하는 데 큰 도움이 된다.

String Formatting

String Formatting(문자열 포멧팅)은 문자열 안에 변수나 값을 삽입하거나, 그 값을 특정한 형식으로 정렬, 자릿수, 소수점 등을 지정하여 표현하는 방법이다. 이를 통해 더 체계적으로 출력문을 표현할 수 있다.

Replacement Field

문자열에서 {}로 감싼 부분을 replacement_field라고 하며, 아래와 같이 구성된다.

"{[field_name][!conversion][:format_spec]}"

field_name

field_name은 문자열 포멧팅에서 {} 안에 들어가는 값의 위치나 이름을 지정하는 부분이다.

# str.format() 메서드에서 위치 인자 사용
'Name: {0}, Age: {1}'.format('Yongjus', 25)
# str.format() 메서드에서 키워드 인자 사용
'Name: {name}, Age: {age}'.format(name='Yongjus', age=25)
# str.format() 메서드에서 딕셔너리로 접근
person = {'name': 'Yongjus', 'age': 25}
"Name: {0[name]}, Age: {0[age]}".format(person)
# str.format() 메서드에서 객체로 접근
class User:
    def __init__(self, name, age):
        self.name = name
        self.age = age

user = User('Yongjus', 25)
'Name: {0.name}, Age: {0.age}'.format(user)
# Formatted String Literals(f-string)을 사용
name = 'Yongjus'
age = 25
f'Name: {name}, Age: {age}'
# % 포멧 사용
'Name: %s, Age: %d' % ('Yongjus', 25)