プレーン整数オブジェクト
- type PyIntObject
- PyObject のこのサブタイプは、Python整数オブジェクトを表します。
- PyTypeObject PyInt_Type
- PyTypeObject のこのインスタンスは、Pythonのプレーン整数型を表します。 これは、
int
およびtypes.IntType
と同じオブジェクトです。
- int PyInt_Check(PyObject *o)
o のタイプが PyInt_Type であるか、サブタイプが PyInt_Type の場合、trueを返します。
バージョン2.2で変更:サブタイプの受け入れを許可しました。
- int PyInt_CheckExact(PyObject *o)
o のタイプが PyInt_Type であるが、 PyInt_Type のサブタイプではない場合はtrueを返します。
バージョン2.2の新機能。
- PyObject *PyInt_FromString(char *str, char **pend, int base)
- str の文字列値に基づいて、新しい PyIntObject または PyLongObject を返します。これは、 base の基数に従って解釈されます。 pend が NULL 以外の場合、
*pend
は、数値の表現に続く str の最初の文字を指します。 base が0
の場合、基数は str の先頭文字に基づいて決定されます。 str が'0x'
で始まる場合]または'0X'
、基数16が使用されます。 str が'0'
で始まる場合、基数8が使用されます。 それ以外の場合は、基数10が使用されます。 base が0
でない場合は、2
と36
の間にある必要があります。 先頭のスペースは無視されます。 数字がない場合は、ValueError
が発生します。 文字列が大きすぎてマシンのlong int
タイプに含めることができない数値を表し、オーバーフロー警告が抑制されている場合、 PyLongObject が返されます。 オーバーフロー警告が抑制されていない場合、この場合は NULL が返されます。
- PyObject *PyInt_FromLong(long ival)
ival の値を持つ新しい整数オブジェクトを作成します。
現在の実装では、
-5
と256
の間のすべての整数の整数オブジェクトの配列が保持されます。その範囲で整数を作成すると、実際には既存のオブジェクトへの参照が返されます。 したがって、1
の値を変更できるはずです。 この場合のPythonの動作は未定義だと思います。 :-)
- PyObject *PyInt_FromSsize_t(Py_ssize_t ival)
ival の値を持つ新しい整数オブジェクトを作成します。 値が
LONG_MAX
より大きいか、LONG_MIN
より小さい場合、長整数オブジェクトが返されます。バージョン2.5の新機能。
- PyObject *PyInt_FromSize_t(size_t ival)
ival の値を持つ新しい整数オブジェクトを作成します。 値が
LONG_MAX
を超えると、長整数オブジェクトが返されます。バージョン2.5の新機能。
- long PyInt_AsLong(PyObject *io)
- オブジェクトがまだ1つでない場合は、最初にオブジェクトを PyIntObject にキャストしようとし、次にその値を返します。 エラーが発生した場合は、
-1
が返されます。呼び出し元は、PyErr_Occurred()
をチェックして、エラーが発生したかどうか、または値がたまたま-1
であったかどうかを確認する必要があります。
- long PyInt_AS_LONG(PyObject *io)
- オブジェクト io の値を返します。 エラーチェックは実行されません。
- unsigned long PyInt_AsUnsignedLongMask(PyObject *io)
オブジェクトがまだ1つでない場合は、最初にオブジェクトを PyIntObject または PyLongObject にキャストしようとし、次にその値をunsignedlongとして返します。 この関数はオーバーフローをチェックしません。
バージョン2.3の新機能。
- unsigned PY_LONG_LONG PyInt_AsUnsignedLongLongMask(PyObject *io)
最初にオブジェクトを PyIntObject または PyLongObject にキャストしようとします(まだ存在しない場合)。次に、オーバーフローをチェックせずに、その値をunsigned longlongとして返します。
バージョン2.3の新機能。
- Py_ssize_t PyInt_AsSsize_t(PyObject *io)
最初にオブジェクトを PyIntObject または PyLongObject にキャストしようとします(まだ存在しない場合)。次に、その値を
Py_ssize_t
として返します。バージョン2.5の新機能。
- long PyInt_GetMax()
- 処理できる最大の整数(
LONG_MAX
、システムヘッダーファイルで定義されている)に関するシステムの考えを返します。
- int PyInt_ClearFreeList()
整数フリーリストをクリアします。 解放できなかったアイテムの数を返します。
バージョン2.6の新機能。