목차
반응형
새로 알게 된 것
현재 프로젝트 기간이라서 프로젝트 개발 중 위도, 경도에 대한 모델을 생성할 때 어떤 필드를 사용할까 찾아보다가
Decimal에 대해서 알게 되었다.
소수점 데이터에 대해서 보통은 float을 많이 사용한다. float과 decimal의 차이를 알아보자.
Float
: 이진 부동 소수점 형식을 사용해서 부동 소수점 오차가 발생할 수 있다.
Decimal
: 십진 부동 소수점 형식을 사용해 정확성을 유지한다.
아래 예시를 통해 둘의 차이를 알 수 있다.
from decimal import *
a = Decimal('0.1') + Decimal('0.1') + Decimal('0.1') - Decimal('0.3')
b = 0.1 + 0.1 + 0.1 - 0.3
print("Decimal : ", a)
print("Float : ", b)
출력 결과
Decimal : 0.0
Float : 5.551115123125783e-17
decimal을 사용하면 정확한 결과를 얻지만 float을 사용하면 오차가 발생하는 것을 볼 수 있다.
그래서 정확성을 위해 DecimalField를 사용하려고 한다.
zappa 설치 과정에서 발생한 kappa 인코딩 문제를 아래 방법으로 해결했다.
https://github.com/cmg1411/blog_app/issues/3
반응형
'기록 > TIL' 카테고리의 다른 글
[TIL] 231109 - 데브코스 25일차 (0) | 2023.11.09 |
---|---|
[TIL] 231108 - 데브코스 24일차 (0) | 2023.11.08 |
[TIL] 231102 - 데브코스 18일차 (0) | 2023.11.02 |
[TIL] 231101 - 데브코스 17일차 (1) | 2023.11.01 |
[TIL] 231031 - 데브코스 16일차 (0) | 2023.10.31 |