Qualcuno sa come Python gestisce internamente int e long?In che modo Python gestisce int e long?
- Seleziona il tipo giusto in modo dinamico?
- Qual è il limite per un int?
- Sto usando Python 2.6, Is è diverso dalle versioni precedenti?
Come devo capire il codice qui sotto?
>>> print type(65535)
<type 'int'>
>>> print type(65536*65536)
<type 'long'>
Aggiornamento:
>>> print type(0x7fffffff)
<type 'int'>
>>> print type(0x80000000)
<type 'long'>
Non si limitano a eseguire il mapping ai tipi stdc al volo sottotitoli in CPython? –
Sì, penso che lo facciano. Sospetto anche che tutto sia allocato sull'heap, quindi quando un numero ha bisogno di maggiore precisione, semplicemente "realloc" va tutto bene. Ma non ne sono sicuro, quindi lascerò la risposta a qualcun altro. – zneak
Puoi anche forzare python a usare la variabile lunga con 'var = 666L' – qba