|
|
|
Python/C API Reference Manual |
|
|
|
7.2.1 Plain Integer Objects
- PyIntObject
-
This subtype of PyObject represents a Python integer
object.
- PyTypeObject PyInt_Type
-
This instance of PyTypeObject represents the Python plain
integer type. This is the same object as
int and
types.IntType .
int PyInt_Check( | PyObject *o) |
-
Return true if o is of type PyInt_Type or a subtype
of PyInt_Type.
Changed in version 2.2:
Allowed subtypes to be accepted.
int PyInt_CheckExact( | PyObject *o) |
-
Return true if o is of type PyInt_Type, but not a
subtype of PyInt_Type.
New in version 2.2.
PyObject* PyInt_FromString( | char *str, char **pend,
int base) |
-
Return value:
New reference.
Return a new PyIntObject or PyLongObject based on the
string value in str, which is interpreted according to the radix in
base. If pend is non-NULL, *pend will point to
the first character in str which follows the representation of the
number. If base is 0 , the radix will be determined based on
the leading characters of str: if str starts with '0x'
or '0X' , radix 16 will be used; if str starts with
'0' , radix 8 will be used; otherwise radix 10 will be used. If
base is not 0 , it must be between 2 and 36 ,
inclusive. Leading spaces are ignored. If there are no digits,
ValueError will be raised. If the string represents a number
too large to be contained within the machine's long int type and
overflow warnings are being suppressed, a PyLongObject will be
returned. If overflow warnings are not being suppressed, NULL will be
returned in this case.
PyObject* PyInt_FromLong( | long ival) |
-
Return value:
New reference.
Create a new integer object with a value of ival.
The current implementation keeps an array of integer objects for all
integers between -5 and 256 , when you create an int in
that range you actually just get back a reference to the existing
object. So it should be possible to change the value of 1 . I
suspect the behaviour of Python in this case is undefined. :-)
PyObject* PyInt_FromSsize_t( | Py_ssize_t ival) |
-
Return value:
New reference.
Create a new integer object with a value of ival.
If the value exceeds LONG_MAX , a long integer object is
returned.
New in version 2.5.
long PyInt_AsLong( | PyObject *io) |
-
Will first attempt to cast the object to a PyIntObject, if
it is not already one, and then return its value. If there is an
error,
-1 is returned, and the caller should check
PyErr_Occurred() to find out whether there was an error, or
whether the value just happened to be -1.
long PyInt_AS_LONG( | PyObject *io) |
-
Return the value of the object io. No error checking is
performed.
unsigned long PyInt_AsUnsignedLongMask( | PyObject *io) |
-
Will first attempt to cast the object to a PyIntObject or
PyLongObject, if it is not already one, and then return its
value as unsigned long. This function does not check for overflow.
New in version 2.3.
unsigned PY_LONG_LONG PyInt_AsUnsignedLongLongMask( | PyObject *io) |
-
Will first attempt to cast the object to a PyIntObject or
PyLongObject, if it is not already one, and then return its
value as unsigned long long, without checking for overflow.
New in version 2.3.
Py_ssize_t PyInt_AsSsize_t( | PyObject *io) |
-
Will first attempt to cast the object to a PyIntObject or
PyLongObject, if it is not already one, and then return its
value as Py_ssize_t.
New in version 2.5.
-
Return the system's idea of the largest integer it can handle
(LONG_MAX, as defined in the system
header files).
Release 2.5.2, documentation updated on 21st February, 2008.
See About this document... for information on suggesting changes.
|