더북(TheBook)

서식 지정자에서 필드 너비와 정밀도는 생략할 수 있지만, 변환 코드는 반드시 지정해야 한다.

파이썬은 서식 지정자의 명령에 따라 두 번째 인수를 변환할 수 있어야 한다. 모든 데이터 타입은 str() 함수를 통해 문자열로 변환할 수 있으므로, 변환 코드 s에 대해서는 제한이 없다. 그러나 이와 반대로 stdio.writef('%12d', 'Hello')는 문자열을 정수로 변환할 수 없으므로 실행 시 TypeError 예외를 발생시킨다. 서식 지정자를 사용하는 예는 [표 1.5.2]를 참조하라.

▼ 표 1.5.2 stdio.writef() 서식 지정자 사용 예

데이터 타입

코드

리터럴 예

서식 문자열 예

변환된 문자열

정수형

d

512

'%14d'
'%-14d'
'           512'
'512           '

실수형

f

e

1595.1680010754388

'%14.2f'
'%.7f'
'%14.4e'
'       1595.17'
'1595.1680011'
'    1.5952e+03'

문자열

s

'Hello, World'

'%14s'
'%-14s'
'%-14.5s'
'  Hello, World'
'Hello, World  '
'Hello         '

 

서식 문자열에서 서식 지정자가 아닌 부분은 표준 출력 장치에 그대로 출력된다. 예를 들어 stdio.writef('pi의 값은 대략 %.2f\n이다.', math.pi) 문은 다음과 같이 출력한다.

pi의 값은 대략 3.14이다.

stdio.writef()를 사용할 때는 줄을 바꾸려면 개행 문자(\n)를 명시적으로 지정해야 한다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.