强制python打印整数
我的问题是: 例如,如果我尝试打印以下结果:强制python打印整数,python,python-2.7,Python,Python 2.7,我的问题是: 例如,如果我尝试打印以下结果: 2**64 1.8446744*10**19 将打印: 18446744073709551616L 1.8446744e+19 但现在如果我想打印以下结果: 2**64 1.8446744*10**19 这将打印: 18446744073709551616L 1.8446744e+19 所以我的问题是:如何打印1.8446744e+19的整个结果,我想看到: 18446744000000000000 我的号码末尾的符号L是什么意思?
2**64
1.8446744*10**19
将打印:
18446744073709551616L
1.8446744e+19
但现在如果我想打印以下结果:
2**64
1.8446744*10**19
这将打印:
18446744073709551616L
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及更高版本,但不适用于python 3使用字符串格式设置要显示的格式:
>>> print "%.0f" % (1.8446744*10**19)
18446744000000000000
你如何“打印”这些?如果只使用python终端,并且计算
2**64
,那么如果使用print
@Wooble,则不应显示L
,它将以OP状态打印出来:>>2**64 18446744073709551616L
只需使用int
而不是long
,在某种程度上它会很好