これが私の問題です:
たとえば、次の結果を印刷しようとすると:
2**64
印刷されます:
18446744073709551616L
しかし、今、次の結果を印刷したい場合:
1.8446744*10**19
これは印刷されます:
1.8446744e+19
だから私の質問は: 1.8446744e+19 の結果全体を表示するにはどうすればよいですか?
18446744000000000000
数字の末尾にある記号 L はどういう意味ですか?
これが私の問題です:
たとえば、次の結果を印刷しようとすると:
2**64
印刷されます:
18446744073709551616L
しかし、今、次の結果を印刷したい場合:
1.8446744*10**19
これは印刷されます:
1.8446744e+19
だから私の質問は: 1.8446744e+19 の結果全体を表示するにはどうすればよいですか?
18446744000000000000
数字の末尾にある記号 L はどういう意味ですか?
まず、数字の末尾にある L は、型が「長い」ことを意味します。次の方法で型を確認できます。
>>> type(18446744000000000000)
long
次に、科学的表記法としてではなく結果を取得するには、数値を long に変換するだけです。
>>> long(1.8446744*10**19)
18446744000000000000L
int として変換しようとすることができます。python は自動的に long として変換します。
PS:これはpython 2.2以降でのみ機能しますが、python 3では機能しません