저는 gmpy2
의 관리자입니다. MPFR을 래핑하는 것 외에도 gmpy2
은 GMP (정수 및 유리수의 경우)와 MPC (복잡한 산술의 경우)를 래핑합니다. MPFR 및 MPC는 모두 십진수 표현을 사용하는 Decimal
에 비해 이진 표현을 사용합니다.
다음은 float128
에 해당하는 빠른 사용 예입니다. 커널 2.0.x 시리즈
>>> import gmpy2
>>> gmpy2.set_context(gmpy2.ieee(128))
>>> gmpy2.get_context()
context(precision=113, real_prec=Default, imag_prec=Default,
round=RoundToNearest, real_round=Default, imag_round=Default,
emax=16384, emin=-16493,
subnormalize=True,
trap_underflow=False, underflow=False,
trap_overflow=False, overflow=False,
trap_inexact=False, inexact=False,
trap_invalid=False, invalid=False,
trap_erange=False, erange=False,
trap_divzero=False, divzero=False,
trap_expbound=False,
allow_complex=False)
>>> gmpy2.sin(gmpy2.mpfr("1.2"))
mpfr('0.932039085967226349670134435494826026',113)
,
gmpy2.ieee()
는 32, 64 또는 128 비트 포맷을 지원하기 위해 컨텍스트를 생성한다. 개발 지점 지원은 더 넓은 범위의 정밀도입니다.
답변은 [문서] (https://docs.python.org/3/library/decimal.html)에서 찾으실 수 있습니다. – vaultah
@vaultah 나는 사전에 문서를 참조했는데 예, 그렇지만 올바르게 이해했는지 확인하고 싶었습니다. '.prec'가 실제로 ** decimal ** places를 설정했는지 확인하고 싶었습니다. 예를 들면 ... –
'decimal'은 10 진수 부동 소수점을 구현 한 값이므로 소수점 이하 자릿수를 사용합니다. 이것은 바이너리 형식 인'__float128'보다 다른 답을 줄 것입니다. –