在数据模型部分的官方 python 文档中,__ipow__
method定义为:
object.__ipow__(self, other[, modulo])
然后,文档解释了调用这些方法来实现增强的算术赋值(**=
for__ipow__
)
但是允许使用modulo
参数的**=
的语法是什么?
第三个参数只是为了与__pow__
对称。
该参数包含在原始'add in-place operator equivalents' commit中,但除了直接调用__ipow__
方法之外,不支持从 Python 代码使用它。
例如,INPLACE_POWER
操作码处理p in None
作为第三个参数:
case INPLACE_POWER:
w = POP();
v = TOP();
x = PyNumber_InPlacePower(v, w, Py_None);
Py_DECREF(v);
Py_DECREF(w);
SET_TOP(x);
if (x != NULL) continue;
break;
最有可能的是,即使从 C 代码中实现__ipow__
作为__pow__
的别名。
本站系公益性非盈利分享网址,本文来自用户投稿,不代表边看边学立场,如若转载,请注明出处
评论列表(51条)