2011-08-10 5 views
6

をint型:Pythonの質問と私は、次を実行した好奇心から

>>> int(1e100) 

そして、出力されました:

10000000000000000159028911097599180468360808563945281389781327557747838772170381060813469985856815104L 

なぜ?なぜこれが似ていない:

10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000L 

これはint機能の、または大longのストレージの製品ですか?

+0

が代わりにこれを試してみてください: '10 ** 100'あなたが期待するものでしょう。この方法には浮動小数点は含まれていません。 – Keith

+0

@keith - ありがとう。私はこれを実際に必要としません。私は好奇心から試しました。 – orokusaki

答えて

1

floatに変換されてから整数として表示されます。

0

1e100丸めの不正確な世界にそう歓迎フロート(一般的には、eを使用するフロートを意味する)である:

>>> type (1e100) 
<type 'float'> 
関連する問題