说明
《Python 教程》 持续更新中,提供建议、纠错、催更等加作者微信: gairuo123(备注:pandas教程)和关注公众号「盖若」ID: gairuo。跟作者学习,请进入 Python学习课程。欢迎关注作者出版的书籍:《深入浅出Pandas》 和 《Python之光》。
Python中的幂运算 **
在底层是通过调用 C 语言的 pow() 函数实现的。pow() 函数再根据不同情况调用不同的计算方法。
在Python中,可以使用 **
运算符进行幂运算,计算一个数的整数次幂。
比如:
2 ** 3 # 计算 2的3次方,结果是8
pow(2, 3) # 使用pow()内置函数计算2的3次方,结果也是8
(-2) ** 2 # 计算-2的2次方,结果是4
**
运算符先计算最右边的幂运算。
可以计算浮点数的幂:
2.5 ** 3 # 计算2.5的3次方,结果约等于15.625
两个数相乘可以用多次幂运算的方式进行计算:
2 ** 3 * 2 ** 4 # 相当于 2的3次方 * 2的4次方
# 也就是 8 * 16 = 128
幂运算还可以用于计算复数的幂。综上,Python 中通过 **
运算符和pow()函数提供了计算数的幂的功能,可以用于整数、浮点数和复数等多种数据类型。
幂运算符的绑定比在其左侧的一元运算符更紧密;但绑定紧密程度不及在其右侧的一元运算符。 句法如下:
power ::= (await_expr | primary) ["**" u_expr]
因此,在一个未加圆括号的幂运算符和单目运算符序列中,运算符将从右向左求值(这不会限制操作数的求值顺序): -1**2
结果将为 -1。
幂运算符与附带两个参数调用内置 pow() 函数具有相同的语义:结果为对其左参数进行其右参数所指定幂次的乘方运算。 数值参数会先转换为相同类型,结果也为转换后的类型。
对于 int 类型的操作数,结果将具有与操作数相同的类型,除非第二个参数为负数;在那种情况下,所有参数会被转换为 float 类型并输出 float 类型的结果。 例如,10**2
返回 100,而 10**-2
返回 0.01。
对 0.0 进行负数幂次运算将导致 ZeroDivisionError。 对负数进行分数幂次运算将返回 complex 数值。 (在早期版本中这将引发 ValueError。)
此运算符可使用特殊的 __pow__()
方法来自定义。
可以在 Python 中使用 pow() 或 math.power() 做指数运算
Python 内置函数 pow() 。
np.power() 是 NumPy 的计算函数。
更新时间:Sept. 17, 2023, 5:23 p.m. 标签:python 幂运算