有没有办法在标准的python模块中获得黄金比例 phi
?我在e
模块中知道 pi
和 math
,但我可能错过了 phi
在某处定义。
答案 0 :(得分:50)
scipy.constants
将黄金比例定义为scipy.constants.golden
。它在标准库中没有定义,大概是因为很容易定义自己:
golden = (1 + 5 ** 0.5) / 2
答案 1 :(得分:0)
没有。但是,由于无论如何都导入数学,因此 phi 的计算方式可能与 pi 的计算方式相同:
>>> import math
>>> pi = 4 * math.atan(1)
>>> pi
3.141592653589793
>>> math.pi
3.141592653589793
>>> phi = ( 1 + math.sqrt(5) ) / 2
>>> phi
1.618033988749895
数学定义了 pi 和 e 但没有定义 phi 的原因可能是因为没有人要求
python 数学文档说math.pi是“数学常数π= 3.141592 ...,以可用的精度表示。”
但是,它实际上是truncated to 53 bits。如果您拥有一台能够获得更高精度的超级计算机,则可以通过使用te数学模块计算四倍于一个的反正切值的better approximation为 pi :
关于 phi 也可以这样说,它与solution to the quadratic equation x² + x -1 = 0:pi=4*math.atan(1)
非常相似。