반응형
파이썬, 부동소숫점 계산 정확도 보장하기
글. 수알치 오상문
아래 파이썬 예제를 보면 단순히 부동소숫점 계산을 이용하면 원하지 않던 엉뚱한 결과를 발생시킬 수 있음을 볼 수 있습니다. 이런 경우에 부동소수점 계산 결과의 정확도를 높이려면 Decimal을 이용합니다.
[파이썬 예제]
# 아래 세 개는 모두 False
print(1.1 + 0.1 == 1.2)
print(1.10 + 0.10 == 1.20)
print(1.100000000000000000000 + 0.100000000000000000000 == 1.200000000000000000000)
# True 결과를 얻고 싶으면 Decimal 이용
from decimal import Decimal
print(Decimal('1.1') + Decimal('0.1') == Decimal('1.2')) # 출력: True
[실행 결과]
False
False
False
True
반응형
'Python 기초' 카테고리의 다른 글
파이썬, platform 모듈: 파이썬 프로그램 실행 환경/플랫폼 정보 (0) | 2023.08.16 |
---|---|
파이썬, 중첩 컴프리헨션 이용하기 (0) | 2023.08.11 |
사전 객체를 문자열로 바꾸거나 그 문자열을 사전 데이터로 변환하는 다섯 가지 예제 (0) | 2023.04.12 |
파이썬, 특정 디렉터리를 모두 탐색 예제 (0) | 2023.04.08 |
파이썬, 멀티스레딩, 멀티프로세싱 예제 (백그라운드 실행) (0) | 2023.03.23 |