这里是我的问题:部队蟒蛇打印整个数字
如果我尝试例如打印的结果:
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(1.8446744*10**19)
18446744000000000000L
你可以尝试将它转换为int,python会自动将其转换为long。
PS:这仅适用于在Python 2.2和上而不是蟒蛇3
只需使用'int'而不是'长',它会很好,直到一个点无论如何 –
感谢精度 – Freelancer
使用字符串格式化来设置要显示的格式为:
>>> print "%.0f" % (1.8446744*10**19)
18446744000000000000
你怎么样“印刷”这些?如果您使用“打印”,则不应显示“L”。 – geoffspear
@Wooble如果你只是使用python终端,并评估'2 ** 64'它会打印出OP作为: '>>> 2 ** 64 18446744073709551616L ' – Freddie