728x90
반응형
Python에서 숫자 포매팅과 소수점 제어는 어떻게 할까요?
Python으로 작업하다 보면 숫자를 특정 형식으로 출력하거나 소수점 이하 자리수를 조정해야 할 때가 많습니다.
예를 들어, 계산 결과를 소수점 이하 3자리까지만 표시하거나, 천 단위 구분 기호를 추가해야 하는 경우 등이 있습니다.
:.nf란 무엇인가요?
:.nf는 Python에서 숫자를 소수점 이하 3자리로 제한하여 출력하는 포매팅 옵션입니다.
이 문법을 사용하면 자동 반올림과 함께 보기 좋은 숫자 형식을 만들 수 있습니다.
기본 문법:
{value:.nf}
- value: 출력할 숫자 값.
- n: 표시할 소수점 이하 자리수.
- f: 고정 소수점(fixed-point) 형식.
1. :.3f 사용 예제
소수점 이하 3자리까지 출력
value = 1.23456
print(f"{value:.3f}")
출력:
1.235
- 1.23456은 소수점 이하 셋째 자리에서 반올림되어 출력됩니다.
부족한 자리를 0으로 채우기
value = 1.2
print(f"{value:.3f}")
출력:
1.200
- 자리수를 맞추기 위해 부족한 부분은 0으로 채워집니다.
숫자의 전체 폭 지정
value = 123.4
print(f"{value:10.2f}")
출력:
123.40
- 10.2f에서 10은 출력 폭(칸)을 지정하며, 오른쪽 정렬됩니다.
- 소수점 이하 2자리까지 출력합니다.
천 단위 구분 기호 추가
value = 1234567.89
print(f"{value:,.2f}")
출력:
1,234,567.89
- :,는 천 단위 구분 기호를 추가합니다.
2. :.3f와 다른 포매팅 옵션 비교
Python에서는 f-string과 format() 두 가지 방법으로 숫자를 포매팅할 수 있습니다.
f-string 방식 (Python 3.6 이상)
value = 123.456
print(f"{value:.2f}")
출력:
123.46
format() 방식
value = 123.456
print("{:.2f}".format(value))
출력:
123.46
- 두 방식은 동일한 결과를 출력하지만, f-string은 간결하고 가독성이 좋아 최근 Python 코드에서 더 많이 사용됩니다.
3. 실제 활용 예제
1. 과학 계산에서 결과 출력
pi = 3.14159265359
print(f"The value of pi is approximately {pi:.3f}")
출력:
The value of pi is approximately 3.142
2. 금융 데이터 표시
balance = 12345.6789
print(f"Your account balance is: ${balance:,.2f}")
출력:
Your account balance is: $12,345.68
4. 포매팅 옵션 요약
표현식 설명 예제 출력
| :.nf | 소수점 이하 n자리까지 고정 | 1.235 |
| :n.mf | 전체 n칸, 소수점 이하 m자리 | 1.23 |
| :0n.mf | 전체 n칸, 빈 자리를 0으로 채움 | 001.23 |
| :,.mf | 천 단위 구분 기호와 소수점 이하 m자리 표시 | 1,000.12 |
'Category > Python' 카테고리의 다른 글
| Python의 with 문으로 컨텍스트 관리하기 (0) | 2024.12.08 |
|---|---|
| Python의 next() 함수로 이터레이터 객체 순회하기 (0) | 2024.12.08 |
| Python sorted() 함수에서 정렬 기준 설정하기 (0) | 2024.11.28 |
| Python에서 집합(set) 생성과 초기값 설정법 (0) | 2024.11.27 |
| Python collections 모듈의 defaultdict 사용하기 (0) | 2024.11.22 |