繁体   English   中英

PI中的数字位数不同

[英]Different number of digits in PI

我是Python的初学者,我对PI有疑问。

>>> import math
>>> p = math.pi
>>> print p
3.14159265359
>>> math.pi
3.141592653589793
  • 为什么两者的位数不同?
  • 如何在不使用Chudnovsky算法的情况下将Pi的值增加到更多小数位?

为什么两者的位数不同?

一个用__str__ '计算',另一个用__repr__

>>> print repr(math.pi)
3.141592653589793
>>> print str(math.pi)
3.14159265359

print使用__str__对象的返回值来确定要打印的内容。 只是做math.pi使用__repr__

如何在不使用Chudnovsky算法的情况下将Pi的值增加到更多小数位?

您可以使用format()显示更多数字

>>> print "pi is {:.20f}".format(math.pi)
pi is 3.14159265358979311600

其中20是小数位数。 更多信息在文档中

print功能在一定程度上完善了浮动。 你可以改变多少,使用:

print "%1.<number>f" % math.pi

在这种特殊情况下:

print "%1.11f" % math.pi

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM