10. 파이썬 문자열 포맷팅하기


파이썬 문자열 포맷팅하기

파이썬의 문자열 자료형은 다양한 메서드를 제공합니다.

이 페이지에서는 문자열의 format() 메서드와 f-string을 사용해서 문자열 처리를 간편하게 하는 방법을 소개합니다.




1) 숫자 사용하기


파이썬 문자열 포맷팅하기

예제1

print('A:{0}, B:{1}'.format('Tim', 22))
print('A:{1}, B:{0}'.format('Tim', 22))
print('A:{}, B:{}'.format('Tim', 22))
A:Tim, B:22
A:22, B:Tim
A:Tim, B:22

문자열 안에 포함된 중괄호 { } 위치에 format()에 입력된 값들이 표시됩니다.

중괄호에 입력한 숫자는 format()에 입력한 값들의 순서에 매칭됩니다.

숫자를 입력하지 않아도 0, 1, … 을 입력한 것과 같습니다.



예제2

print('A:' + str(12) + ', B:' + str(24) + ', C:' + str(36) + ', D:' + str(48))

print('A:{}, B:{}, C:{}, D:{}'.format(12, 24, 36, 48))
A:12, B:24, C:36, D:48
A:12, B:24, C:36, D:48

문자열 연결 (Concatenation)이 많아질수록, format()을 사용하는 것이 더 깔끔한 코드가 될 수 있습니다.




2) 이름 사용하기


파이썬 문자열 포맷팅하기

예제

print('A:{name}, B:{age}'.format(name='Tim', age=22))
print('A:{age}, B:{name}'.format(name='Tim', age=22))
A:Tim, B:22
A:22, B:Tim

name, age와 같이 format()에 입력된 값들을 매칭하기 위해 사용하는 파라미터를 사용해서 값을 표시할 수 있습니다.




3) 형식 지정하기


파이썬 문자열 포맷팅하기

예제

print('A:{:e}, B:{:E}'.format(15, 124))

print('C:{:,}, D:{:.2f}'.format(1024, 5723))
A:1.500000e+01, B:1.240000E+02
C:1,024, D:5723.00

숫자가 표시되는 형식을 지정할 수 있습니다.

{:e}, {:E}는 과학적 형식 (Scientific format)으로 표시하도록 합니다.

{:,}는 1000의 자리마다 콤마를 표시합니다.

{:.2f}는 소수점 아래 두자리까지 표시하도록 합니다.




4) f-String 사용하기


파이썬 문자열 포맷팅하기

예제

name = 'Tim'
age = 22

print(f'A:{name}, B:{age}')
print('A:{name}, B:{age}'.format(name=name, age=age))
A:Tim, B:22
A:Tim, B:22

f-String (Formatted string) 방식은 Python 3.6 버전에서 도입된 새로운 문자열 처리 방식입니다.

예제에서와 같이 f’String’과 같은 형식으로 변수의 이름을 직접 입력할 수 있습니다.

format()을 사용하는 경우보다 더 간결하게 코드를 작성할 수 있습니다.



이전글/다음글