如何在Python中提取任意度的算术根? 我知道那个算法:
z = pow(x,(1/N))
这是对的吗? 这是唯一的方法吗?
答案 0 :(得分:4)
这确实是要走的路。但是,您需要使用1.0/N
来确保浮点除法(除非N
始终为浮点数):
>>> import math
>>> math.pow(27, 1/3)
1.0
>>> math.pow(27, 1.0/3)
3.0
>>> math.pow(27, 1/3.0)
3.0
您还可以使用from __future__ import division
使/
成为“常规”除法运算符(对于整数除法,您将使用//
):
>>> from __future__ import division
>>> import math
>>> math.pow(27, 1/3)
3.0
您也可以使用math.pow(x, y)
运算符代替x ** y
:
>>> 27**(1.0/3)
3.0
答案 1 :(得分:1)
您可以使用**运算符
>>>x = 32
>>>n = 5
>>>x**(1.0/n)
2.0