Number Protocol

返回将* o1 o2 相加的结果,如果失败则返回 NULL *。这等效于 Python 表达式o1 + o2

返回从* o1 减去 o2 的结果,如果失败则返回 NULL *。这等效于 Python 表达式o1 - o2

返回将* o1 o2 相乘的结果,如果失败则返回 NULL *。这等效于 Python 表达式o1 * o2

返回将* o1 除以 o2 的结果,如果失败则返回 NULL *。这等效于 Python 表达式o1 / o2

返回* o1 的下限除以 o2 或失败时的 NULL *。这等效于整数的“经典”除法。

2.2 版中的新Function。

返回* o1 的 math 值除以 o2 的合理近似值,如果失败,则返回 NULL *。因为二进制浮点数是近似值,所以返回值是“ approximate”。不可能以二为底表示所有实数。传递两个整数时,此函数可以返回浮点值。

2.2 版中的新Function。

返回* o1 除以 o2 的余数,如果失败则返回 NULL *。这等效于 Python 表达式o1 % o2

请参阅内置Functiondivmod()。失败时返回* NULL *。这等效于 Python 表达式divmod(o1, o2)

请参阅内置Functionpow()。失败时返回* NULL 。这等效于 Python 表达式pow(o1, o2, o3),其中 o3 是可选的。如果要忽略 o3 ,请在其位置传递Py_None(为 o3 传递 NULL *将导致非法的内存访问)。

如果成功,则返回* o 取反,如果失败,则返回 NULL *。这等效于 Python 表达式-o

成功返回* o ,失败返回 NULL *。这等效于 Python 表达式+o

返回* o 的绝对值,如果失败则返回 NULL *。这等效于 Python 表达式abs(o)

如果成功,则返回* o 的按位取反,如果失败,则返回 NULL *。这等效于 Python 表达式~o

如果成功,则返回将* o1 左移 o2 的结果,如果失败,则返回 NULL *的结果。这等效于 Python 表达式o1 << o2

如果成功,返回右移* o1 * * 2 的结果,否则返回* NULL *。这等效于 Python 表达式o1 >> o2

成功返回* o1 o2 的“按位与”,失败则返回 NULL *。这等效于 Python 表达式o1 & o2

如果成功,则返回* o1 的“按位异或”或 o2 ,如果失败,则返回 NULL *。这等效于 Python 表达式o1 ^ o2

如果成功,则返回* o1 o2 的“按位或”,如果失败,则返回 NULL *。这等效于 Python 表达式o1 | o2

返回将* o1 o2 相加的结果,如果失败则返回 NULL 。如果 o1 *支持,则操作就地完成。这等效于 Python 语句o1 += o2

返回从* o1 减去 o2 的结果,如果失败则返回 NULL 。如果 o1 *支持,则操作就地完成。这等效于 Python 语句o1 -= o2

返回将* o1 o2 相乘的结果,如果失败则返回 NULL 。如果 o1 *支持,则操作就地完成。这等效于 Python 语句o1 *= o2

返回将* o1 除以 o2 的结果,如果失败则返回 NULL 。如果 o1 *支持,则操作就地完成。这等效于 Python 语句o1 /= o2

返回将* o1 除以 o2 的 math 底线,如果失败则返回 NULL 。如果 o1 *支持,则操作就地完成。这等效于 Python 语句o1 //= o2

2.2 版中的新Function。

返回* o1 的 math 值除以 o2 的合理近似值,如果失败,则返回 NULL 。因为二进制浮点数是近似值,所以返回值是“ approximate”。不可能以二为底表示所有实数。传递两个整数时,此函数可以返回浮点值。如果 o1 *支持,则操作就地完成。

2.2 版中的新Function。

返回* o1 除以 o2 的余数,如果失败则返回 NULL 。如果 o1 *支持,则操作就地完成。这等效于 Python 语句o1 %= o2

请参阅内置Functionpow()。失败时返回* NULL 。如果 o1 支持,则操作就地完成。当 o3 为Py_None时,这等效于 Python 语句o1 **= o2,否则为pow(o1, o2, o3)的就地变体。如果 o3 被忽略,则在其位置传递Py_None(为 o3 传递 NULL *将导致非法的内存访问)。

如果成功,则返回将* o1 左移 o2 的结果,如果失败,则返回 NULL 的结果。如果 o1 *支持,则操作就地完成。这等效于 Python 语句o1 <<= o2

如果成功,返回右移* o1 * * 2 的结果,否则返回* NULL 。如果 o1 *支持,则操作就地完成。这等效于 Python 语句o1 >>= o2

成功返回* o1 o2 的“按位与”,失败则返回 NULL 。如果 o1 *支持,则操作就地完成。这等效于 Python 语句o1 &= o2

如果成功,则返回* o1 的“按位异或”或 o2 ,如果失败,则返回 NULL 。如果 o1 *支持,则操作就地完成。这等效于 Python 语句o1 ^= o2

如果成功,则返回* o1 o2 的“按位或”,如果失败,则返回 NULL 。如果 o1 *支持,则操作就地完成。这等效于 Python 语句o1 |= o2

如果成功,则返回* o 转换为整数对象,如果失败,则返回 NULL *。如果参数超出整数范围,则将返回一个长对象。这等效于 Python 表达式int(o)

如果成功,则返回* o 转换为长整数对象,如果失败,则返回 NULL *。这等效于 Python 表达式long(o)

如果成功,则返回* o 转换为 float 对象,如果失败,则返回 NULL *。这等效于 Python 表达式float(o)

2.5 版的新Function。

2.6 版的新Function。

2.5 版的新Function。

2.5 版的新Function。

首页