각 위치 지정자에는 콜론 뒤에 형식 지정자를 붙여 넣어 문자열에 값을 넣을 때 어떤 형식으로 변환할지 정할 수 있다(모든 형식 지정자에 대한 정보를 보고 싶으면 help('FORMATTING') 참고).
formatted = '{:<10} = {:.2f}'.format(key, value) print(formatted) >>> my_var = 1.23
위치 지정자를 적용한 결과는 그 위치에 해당하는 값과 : 뒤에 있는 형식 지정자를 format 내장 함수에 전달해 얻은 결과(따라서 앞의 예에서 {:.2f}는 format(value, '.2f'))와 같다. 이 결과가 형식화된 전체 문자열의 해당 위치 지정자 부분을 대신한다. 특별 메서드인 __format__을 사용해 클래스별로 형식화 방식을 커스텀화할 수 있다.
C 스타일 형식화 문자열에서 % 문자를 표시하고 싶으면 %가 형식 지정자로 해석되지 않도록 %%로 이스케이프해야 한다. 마찬가지로 str.format을 사용할 때는 중괄호를 이스케이프해야 한다.
print('%.2f%%' % 12.5) print('{} replaces {{}}'.format(1.23)) >>> 12.50% 1.23 replaces {}