Python

[format] 자릿수를 맞춘 숫자 출력

비번변경 2021. 11. 3. 21:18

정수형, 실수형과 같은 숫자 데이터를 다루다 보면 소수점 이하 둘째 자리까지 출력하거나, 또는 세 자리의 정수로 출력하는 등 자리 수를 맞춰서 출력을 해야 할 때가 있다.

즉, 문자열 포매팅 방법에 대해 적어본다.

 

str.format()

서식 지정자(format indentifier)를 사용하여 문자열을 출력한다.

문자열의 중괄호 내에 지정된 키로 매개변수에서 값을 찾아 대입하여 문자열을 만든다. 여기서 키는 매개변수의 위치값인 인덱스가 될 수도 있으며, 인덱스는 0부터 시작한다.

a = "index_0"
b = "index_1"

# index
print("{1}".format(a, b))

# key
print("{a} {b}".format(a=a, b=b))

 

자릿수 지정 서식

출력할 값과 서식은 콜론(:)으로 구분한다.

자릿수 지정 서식

즉, k 길이의 문자열이 되게끔 0을 채우고, 소수부는 j자리 수까지 출력한다. j 자리 이하의 소수점은 버린다.

소수를 다룰 때는 소수점도 문자이기 때문에 자리를 차지한다는 점을 유의한다.

 

코드

print("0k    = {a:07}".format(a=2))
print("0k    = {a:07}".format(a=2.7))
print("0k.jf = {a:07.2f}".format(a=2.7))

 

실행 결과

 

0을 생략하면 공백으로 자리를 맞춘다.

 

코드

print("k    = {a:7}".format(a=2))
print("k    = {a:7}".format(a=2.7))
print("k.jf = {a:7.2f}".format(a=2.7))

 

실행 결과