더북(TheBook)

다중 인수 stdio.writef() 함수를 호출할 때는 인수가 세 개 이상일 때도 있다. 이때 서식 문자열 안에 있는 서식 지정자는 콤마로 구분된 각각의 인수에 대응된다. 예를 들어 sqrt.py(프로그램 1.3.6)에 있는 stdio.write(t)stdio.writef('%.1f의 제곱근은 %.6f이다.', c, t)로 바꾸면 다음과 같이 출력된다.

2.0의 제곱근은 1.414214이다.

더 자세한 예로 대출금을 갚을 때 다음과 같이 루프 안에서 월별로 대출금, 잔액, 이자를 출력하는 코드를 작성할 수 있다.

format = '%3s $%6.2f $%7.2f $%5.2f\n'
stdio.writef(format, month[i], pay, balance, interest)

이 문장을 이용하면 다음과 같은 표의 두 번째 이후 줄을 출력할 수 있다(연습문제 1.5.14).

     상환액   잔액      이자
Jan  $299.00  $9742.67  $41.67 
Feb  $299.00  $9484.26  $40.59 
Mar  $299.00  $9224.78  $39.52 
 ...

문자열을 일일이 연결해 출력 문자열을 생성하는 것보다 코드가 훨씬 더 간단해지기 때문에 문자열을 서식해 출력하는 것이 더 편리하다.

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