Python 3에서 딕셔너리를 활용한 문자열 포매팅
Python에서는 딕셔너리(dictionary)를 사용해 문자열에 값을 삽입(interpolation)할 수 있습니다. 이 방식의 문법은 % 기호와 변환 문자 사이의 괄호 안에 키(key) 이름을 지정하는 형태입니다.
예를 들어, 딕셔너리에 'cost'라는 키로 저장된 실수(float) 값을 $xxxx.xx 형식으로 출력하고 싶다면, 해당 위치에 '$%(cost).2f'처럼 작성하면 됩니다.
딕셔너리 기반 문자열 포매팅 예제
아래 예제는 딕셔너리를 활용해 문자열을 구성하고 숫자를 원하는 형식으로 출력하는 방법을 보여줍니다:
>>> print('%(language)s has %(number)03d quote types.' % {'language': "Python", "number": 2})
Python has 002 quote types.위 코드에서 %(language)s는 딕셔너리의 'language' 키 값을 문자열로, %(number)03d는 'number' 키 값을 세 자리 정수(앞자리는 0으로 채움)로 변환해 출력합니다.
참고 자료
문자열 포매팅과 관련 연산자에 대해 더 자세히 알고 싶다면 Python 공식 문서를 참고하세요:
printf 스타일 문자열 포매팅 - Python 공식 문서
참고로, 최신 Python 코드에서는 가독성과 유연성이 더 뛰어난 str.format() 메서드나 f-string(f"{value}")을 사용하는 것이 권장됩니다. 다만 레거시 코드나 특수한 상황에서는 위와 같은 printf 스타일 포매팅도 여전히 유용하게 활용됩니다.