[Python] Python (long) int in cython

Manlio Perillo manlio.perillo a gmail.com
Mar 3 Nov 2015 14:36:13 CET


2015-11-02 7:19 GMT+01:00 Pietro Battiston <ml a pietrobattiston.it>:
> Salve a tutti,
>
> sto traducendo del codice in cython, ed ho un problema: avrei bisogno
> di memorizzare in una variabile un intero arbitrariamente grande (in
> realtà non così immenso, ma più di 64 bit). Ho pensato "niente di più
> semplice: utilizziamo l'int Python" (o long int, sotto Python 2). Ma
> non riesco a definirlo in nessun modo sotto Cython.
>

> [...]

Non ti stai complicando la vita?
Non ho mai usato Cython, ma dalla documentazione si capisce che è un
*sovra-insieme* di Python con la possibilità di dichiarare il tipo
delle variabili e la compilazione in C.

Quindi questo semplice codice funziona come ci si aspetta (verificato
di persona):

def main():
    x = 1
    print x << 128

main()

Se leggi il codice C generato, x viene dichiarato dichiarato come
PyObject e inizializzato come
PyInt_FromLong(1).


Ciao Manlio


Maggiori informazioni sulla lista Python