2014-12-05 8 views
6

Così, ho un gran numero che sto lavorando in Python, ma quando provo a stampare io ottenere qualcosa di simile:Come stampare tutte le cifre di un numero elevato in python?

3.101541146879488e+80 

Come posso stampare tutte le cifre del mio numero di bella ?

+8

Come nasce i dati? Dai un'occhiata al [decimal madule] (https://docs.python.org/2/library/decimal.html) –

+0

Hai letto di [formattazione delle stringhe in Python] (https://docs.python.org/ 2/library/stdtypes.html # string-formattazione)? Come sai che ci sono più cifre? – Air

+0

è 'lungo (x)' ok per questo? – TehTris

risposta

4

sia int e long lavoro per questa

>>> a 
3.101541146879488e+80 
>>> int(a) 
310154114687948792274813492416458874069290879741385354066259033875756607541870592L 
>>> long(a) 
310154114687948792274813492416458874069290879741385354066259033875756607541870592L 
>>> print (int(a)) 
310154114687948792274813492416458874069290879741385354066259033875756607541870592 
>>> print (long(a)) 
310154114687948792274813492416458874069290879741385354066259033875756607541870592 
+2

Si noti che se 'a' è un float la maggior parte di quelle cifre è semplicemente un artefatto del modo in cui è memorizzata in IEEE-754 a doppia precisione – xnx