我想計算功率Decimal
在Python這樣的:計算功率小數在Python
from decimal import Decimal
Decimal.power(2,2)
以上應該返回我作爲Decimal('2)
如何計算功率Decimals
?
編輯: 這就是我沒有
y = Decimal('10')**(x-deci_x+Decimal(str(n))-Decimal('1'))
X,deci_x是小數類型
但上述表達式的拋出誤差爲:
decimal.InvalidOperation: x ** (non-integer)
堆棧跟蹤:
Traceback (most recent call last):
File "ha.py", line 28, in ?
first_k_1=first_k(2,n-1,k)
File "ha.py", line 18, in first_k
y = Decimal('10')**(x-deci_x+Decimal(str(n))-Decimal('1'))
File "/usr/lib64/python2.4/decimal.py", line 1709, in __pow__
return context._raise_error(InvalidOperation, 'x ** (non-integer)')
File "/usr/lib64/python2.4/decimal.py", line 2267, in _raise_error
raise error, explanation
@ Mayank Jain你不能使用具有非整數值的**。使用'math'模塊的'pow'函數來查看下面的解決方案。 – danodonovan
@danodonovan - 但問題是,如果我應用pow,那麼我的精度會降低... –
在python 3。4,'Decimal'有'電源'功能 – danodonovan