Python使用内置函数求幂:**和pow()

示例

可以通过使用内置的pow-function或**运算符来使用幂运算:

2 ** 3    # 8

pow(2, 3) # 8

对于大多数(在Python 2.x中都是)算术运算,结果的类型将是更宽的操作数的类型。这是不正确的**;以下是该规则的例外情况:

  • 基数:int,指数int < 0::

    2 ** -3
    # 出:0.125(结果是浮点数)
  • 这对于Python 3.x也有效。

  • 在Python 2.2.0之前,它引发了一个ValueError。

  • 基数:int < 0或float < 0,指数:float != int

    (-2) ** (0.5)  # 也(-2。)**(0.5)    
    # 出:(8.659560562354934e-17 + 1.4142135623730951j)(结果很复杂)
  • python 3.0.0之前,这引发了一个ValueError。

该operator模块包含两个与**-operator等效的功能:

import operator

operator.pow(4, 2)      # 16

operator.__pow__(4, 3)  # 64

或者可以直接调用该__pow__方法:

val1, val2 = 4, 2

val1.__pow__(val2)      # 16

val2.__rpow__(val1)     # 16

# 不可变的类(如int,float,complex)不支持就地电源操作:

# val1 .__ ipow __(val2)

           

以上是 Python使用内置函数求幂:**和pow() 的全部内容, 来源链接: utcz.com/z/330678.html

回到顶部