番号プロトコル
- int PyNumber_Check(PyObject *o)
オブジェクト o が数値プロトコルを提供する場合は
1
を返し、それ以外の場合はfalseを返します。 この関数は常に成功します。バージョン3.8で変更: o がインデックス整数の場合、は
1
を返します。
- o1 と o2 を加算した結果、または失敗した場合は
NULL
を加算した結果を返します。 これは、Python式o1 + o2
と同等です。
- o1 から o2 を引いた結果、または失敗した場合は
NULL
を返します。 これは、Python式o1 - o2
と同等です。
- o1 と o2 を乗算した結果、または失敗した場合は
NULL
を返します。 これは、Python式o1 * o2
と同等です。
- PyObject *PyNumber_MatrixMultiply(PyObject *o1, PyObject *o2)
o1 と o2 、または失敗した場合は
NULL
での行列乗算の結果を返します。 これは、Python式o1 @ o2
と同等です。バージョン3.5の新機能。
- o1 のフロアを o2 で割った値、または失敗した場合は
NULL
を返します。 これは、整数の「古典的な」除算に相当します。
- o1 を o2 で割った値、または失敗した場合は
NULL
の妥当な近似値を返します。 2進浮動小数点数は概算であるため、戻り値は「概算」です。 2進数ですべての実数を表すことはできません。 この関数は、2つの整数が渡されると、浮動小数点値を返すことができます。
- o1 を o2 で除算した余り、または失敗した場合は
NULL
を返します。 これは、Python式o1 % o2
と同等です。
- 組み込み関数 divmod()を参照してください。 失敗すると
NULL
を返します。 これは、Python式divmod(o1, o2)
と同等です。
- 組み込み関数 pow()を参照してください。 失敗すると
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 を o2 、失敗した場合は
NULL
だけ右シフトした結果を返します。 これは、Python式o1 >> o2
と同等です。
- 成功した場合は o1 と o2 の「ビット単位のand」を返し、失敗した場合は
NULL
を返します。 これは、Python式o1 & o2
と同等です。
- 成功した場合は o2 による o1 の「ビット単位の排他的論理和」を返します。失敗した場合は
NULL
を返します。 これは、Python式o1 ^ o2
と同等です。
- 成功した場合は o1 と o2 の「ビット単位のor」を返し、失敗した場合は
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
と同等です。
- PyObject *PyNumber_InPlaceMatrixMultiply(PyObject *o1, PyObject *o2)
o1 と o2 、または失敗した場合は
NULL
での行列乗算の結果を返します。 o1 がサポートしている場合、操作はインプレースで実行されます。 これは、Pythonステートメントo1 @= o2
と同等です。バージョン3.5の新機能。
- o1 を o2 で除算する、または失敗した場合は
NULL
を除算する数学的フロアを返します。 o1 がサポートしている場合、操作はインプレースで実行されます。 これは、Pythonステートメントo1 //= o2
と同等です。
- o1 を o2 で割った値、または失敗した場合は
NULL
の妥当な近似値を返します。 2進浮動小数点数は概算であるため、戻り値は「概算」です。 2進数ですべての実数を表すことはできません。 この関数は、2つの整数が渡されると、浮動小数点値を返すことができます。 o1 がサポートしている場合、操作はインプレースで実行されます。
- o1 を o2 で除算した余り、または失敗した場合は
NULL
を返します。 o1 がサポートしている場合、操作はインプレースで実行されます。 これは、Pythonステートメントo1 %= o2
と同等です。
- 組み込み関数 pow()を参照してください。 失敗すると
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 を o2 、失敗した場合は
NULL
だけ右シフトした結果を返します。 o1 がサポートしている場合、操作はインプレースで実行されます。 これは、Pythonステートメントo1 >>= o2
と同等です。
- 成功した場合は o1 と o2 の「ビット単位のand」を返し、失敗した場合は
NULL
を返します。 o1 がサポートしている場合、操作はインプレースで実行されます。 これは、Pythonステートメントo1 &= o2
と同等です。
- 成功した場合は o2 による o1 の「ビット単位の排他的論理和」を返します。失敗した場合は
NULL
を返します。 o1 がサポートしている場合、操作はインプレースで実行されます。 これは、Pythonステートメントo1 ^= o2
と同等です。
- 成功した場合は o1 と o2 の「ビット単位のor」を返し、失敗した場合は
NULL
を返します。 o1 がサポートしている場合、操作はインプレースで実行されます。 これは、Pythonステートメントo1 |= o2
と同等です。
- 成功した場合は整数オブジェクトに変換された o を返し、失敗した場合は
NULL
を返します。 これは、Python式int(o)
と同等です。
- 成功した場合はfloatオブジェクトに変換された o を返し、失敗した場合は
NULL
を返します。 これは、Python式float(o)
と同等です。
- 成功した場合はPythonintに変換された o を返し、失敗した場合は TypeError 例外が発生した
NULL
を返します。
- 基数 base に変換された整数 n を文字列として返します。 base 引数は、2、8、10、または16のいずれかである必要があります。 基数2、8、または16の場合、返される文字列の前には、それぞれ
'0b'
、'0o'
、または'0x'
の基数マーカーが付きます。 n がPythonintでない場合は、最初に PyNumber_Index()で変換されます。
- Py_ssize_t PyNumber_AsSsize_t(PyObject *o, PyObject *exc)
o が整数として解釈できる場合、Py_ssize_t値に変換された o を返します。 呼び出しが失敗した場合、例外が発生し、
-1
が返されます。o をPythonintに変換できるが、Py_ssize_t値に変換しようとすると、 OverflowError が発生する場合、 exc 引数は例外のタイプです。これが発生します(通常は IndexError または OverflowError )。 exc が
NULL
の場合、例外はクリアされ、値は負の整数の場合はPY_SSIZE_T_MIN
に、正の整数の場合はPY_SSIZE_T_MAX
にクリップされます。
- int PyIndex_Check(PyObject *o)
- o がインデックス整数(tp_as_number構造体のnb_indexスロットが入力されている)の場合は
1
を返し、それ以外の場合は0
を返します。 この関数は常に成功します。