長整数オブジェクト
- type PyLongObject
- PyObject のこのサブタイプは、Pythonの長整数オブジェクトを表します。
- PyTypeObject PyLong_Type
- PyTypeObject のこのインスタンスは、Pythonの長整数型を表します。 これは、
long
およびtypes.LongType
と同じオブジェクトです。
- int PyLong_Check(PyObject *p)
引数が PyLongObject または PyLongObject のサブタイプである場合はtrueを返します。
バージョン2.2で変更:サブタイプの受け入れを許可しました。
- int PyLong_CheckExact(PyObject *p)
引数が PyLongObject であるが、 PyLongObject のサブタイプではない場合、trueを返します。
バージョン2.2の新機能。
- PyObject *PyLong_FromLong(long v)
- v から新しい PyLongObject オブジェクトを返すか、失敗した場合は NULL を返します。
- PyObject *PyLong_FromUnsignedLong(unsigned long v)
- 失敗した場合は、C
unsigned long
または NULL から新しい PyLongObject オブジェクトを返します。
- PyObject *PyLong_FromSsize_t(Py_ssize_t v)
失敗した場合は、C
Py_ssize_t
または NULL から新しい PyLongObject オブジェクトを返します。バージョン2.6の新機能。
- PyObject *PyLong_FromSize_t(size_t v)
失敗した場合は、C
size_t
または NULL から新しい PyLongObject オブジェクトを返します。バージョン2.6の新機能。
- PyObject *PyLong_FromLongLong(PY_LONG_LONG v)
- 失敗した場合は、C
long long
または NULL から新しい PyLongObject オブジェクトを返します。
- PyObject* PyLong_FromUnsignedLongLong(unsigned PY_LONG_LONG v)
- 失敗した場合は、C
unsigned long long
または NULL から新しい PyLongObject オブジェクトを返します。
- PyObject *PyLong_FromDouble(double v)
- v の整数部分から新しい PyLongObject オブジェクトを返すか、失敗した場合は NULL を返します。
- PyObject *PyLong_FromString(char *str, char **pend, int base)
- str の文字列値に基づいて、新しい PyLongObject を返します。これは、 base の基数に従って解釈されます。 pend が NULL 以外の場合、 * pend は、数値の表現に続く str の最初の文字を指します。 base が
0
の場合、基数は str の先頭文字に基づいて決定されます。 str が'0x'
で始まる場合]または'0X'
、基数16が使用されます。 str が'0'
で始まる場合、基数8が使用されます。 それ以外の場合は、基数10が使用されます。 base が0
でない場合は、2
と36
の間にある必要があります。 先頭のスペースは無視されます。 数字がない場合は、ValueError
が発生します。
- PyObject *PyLong_FromUnicode(Py_UNICODE *u, Py_ssize_t length, int base)
Unicode桁のシーケンスをPythonの長整数値に変換します。 最初のパラメーター u は、Unicode文字列の最初の文字を指し、 length は文字数を示し、 base は変換の基数です。 基数は[2、36]の範囲内にある必要があります。 範囲外の場合、
ValueError
が発生します。バージョン1.6の新機能。
バージョン2.5で変更:この関数は、長さに
int
を使用していました。 これには、64ビットシステムを適切にサポートするためにコードの変更が必要になる場合があります。
- PyObject *PyLong_FromVoidPtr(void *p)
ポインタ p からPython整数または長整数を作成します。 ポインタ値は、 PyLong_AsVoidPtr()を使用して結果の値から取得できます。
バージョン1.5.2の新機能。
バージョン2.5で変更:整数がLONG_MAXより大きい場合、正の長整数が返されます。
- long PyLong_AsLong(PyObject *pylong)
- pylong の内容のC
long
表現を返します。 pylong がLONG_MAX
より大きい場合、OverflowError
が発生し、-1
が返されます。
- long PyLong_AsLongAndOverflow(PyObject *pylong, int *overflow)
pylong の内容のC
long
表現を返します。 pylong がLONG_MAX
より大きいかLONG_MIN
より小さい場合は、 * overlay を1
または-1
に設定します。 、それぞれ、-1
を返します。 それ以外の場合は、 * overlay を0
に設定します。 その他の例外(TypeErrorやMemoryErrorなど)が発生した場合は、-1
が返され、 * overlay は0
になります。バージョン2.7の新機能。
- PY_LONG_LONG PyLong_AsLongLongAndOverflow(PyObject *pylong, int *overflow)
pylong の内容のC
long long
表現を返します。 pylong がPY_LLONG_MAX
より大きいかPY_LLONG_MIN
より小さい場合は、 * overlay を1
または-1
に設定します。 、それぞれ、-1
を返します。 それ以外の場合は、 * overlay を0
に設定します。 その他の例外(TypeErrorやMemoryErrorなど)が発生した場合は、-1
が返され、 * overlay は0
になります。バージョン2.7の新機能。
- Py_ssize_t PyLong_AsSsize_t(PyObject *pylong)
pylong の内容のC
Py_ssize_t
表現を返します。 pylong がPY_SSIZE_T_MAX
より大きい場合、OverflowError
が発生し、-1
が返されます。バージョン2.6の新機能。
- unsigned long PyLong_AsUnsignedLong(PyObject *pylong)
- pylong の内容のC
unsigned long
表現を返します。 pylong がULONG_MAX
より大きい場合、OverflowError
が発生します。
- PY_LONG_LONG PyLong_AsLongLong(PyObject *pylong)
Pythonの長整数からC
long long
を返します。 pylong をlong long
として表現できない場合は、OverflowError
が発生し、-1
が返されます。バージョン2.2の新機能。
- unsigned PY_LONG_LONG PyLong_AsUnsignedLongLong(PyObject *pylong)
Pythonの長整数からC
unsigned long long
を返します。 pylong をunsigned long long
として表現できない場合は、OverflowError
が発生し、(unsigned long long)-1
が返されます。バージョン2.2の新機能。
バージョン2.7で変更:負の pylong は、
TypeError
ではなくOverflowError
を発生させるようになりました。
- unsigned long PyLong_AsUnsignedLongMask(PyObject *io)
オーバーフローをチェックせずに、Pythonの長整数からC
unsigned long
を返します。エラー時に
(unsigned long)-1
を返します。 PyErr_Occurred()を使用して明確にします。バージョン2.3の新機能。
- unsigned PY_LONG_LONG PyLong_AsUnsignedLongLongMask(PyObject *io)
オーバーフローをチェックせずに、Pythonの長整数からC
unsigned long long
を返します。エラー時に
(unsigned PY_LONG_LONG)-1
を返します。 PyErr_Occurred()を使用して明確にします。バージョン2.3の新機能。
- double PyLong_AsDouble(PyObject *pylong)
- pylong の内容のC
double
表現を返します。 pylong をdouble
として近似的に表すことができない場合、OverflowError
例外が発生し、-1.0
が返されます。
- void *PyLong_AsVoidPtr(PyObject *pylong)
Python整数または長整数 pylong をC
void
ポインターに変換します。 pylong を変換できない場合、OverflowError
が発生します。 これは、 PyLong_FromVoidPtr()で作成された値に対して使用可能なvoid
ポインターを生成することのみが保証されています。バージョン1.5.2の新機能。
バージョン2.5で変更: 0..LONG_MAX以外の値の場合、符号付き整数と符号なし整数の両方が受け入れられます。