w bibliotece standardowej, można spojrzeć na module decimal
:
>>> import decimal
>>> decimal.Decimal(-1200)
Decimal('-1200')
>>> decimal.Decimal(-1200).exp()
Decimal('7.024601888177132554529322758E-522')
Jeśli potrzebujesz więcej funkcji niż decimal
podporach, można spojrzeć na bibliotekę mpmath
, którego używam i lubię:
>>> import mpmath
>>> mpmath.exp(-1200)
mpf('7.0246018881771323e-522')
>>> mpmath.mp.dps = 200
>>> mpmath.exp(-1200)
mpf('7.0246018881771325545293227583680003334372949620241053728126200964731446389957280922886658181655138626308272350874157946618434229308939128146439669946631241632494494046687627223476088395986988628688095132e-522')
, ale jeśli to możliwe, powinieneś zobaczyć, czy możesz przekształcić swoje równania pracować całkowicie w przestrzeni dziennika.
Dzięki, dziesiętnie robię to, co potrzebne :) –
Nie mogłem przekształcić, aby pozostać w obszarze dziennika, ponieważ pracuję z log a i log b i potrzebuję/(a + b), który wymagałby dziennika (a + b), co nie jest banalne w uzyskiwaniu, gdy ma się tylko log a i log b. –