Является ли золотое отношение, определенное в Python?

Есть ли способ получить золотое отношение, phi, в стандартном модуле python? Я знаю e и pi в модуле math, но я, возможно, пропустил phi, определенный где-то.

Ответы

Ответ 1

scipy.constants определяет золотое соотношение как scipy.constants.golden. Он нигде не определен в стандартной библиотеке, по-видимому, потому, что легко определить себя:

golden = (1 + 5 ** 0.5) / 2

Ответ 2

Нет Однако, так как вы в любом случае импортируете математику, фи может быть вычислена так же, как и пи:

>>> import math
>>> pi = 4 * math.atan(1)
>>> pi
3.141592653589793
>>> math.pi
3.141592653589793
>>> phi = ( 1 + math.sqrt(5) ) / 2
>>> phi
1.618033988749895

Причина, по которой математика определила число пи и е, но не фи, может быть потому, что никто не просил об этом.


В математических документах Python сказано, что math.pi - это "математическая константа π = 3.141592... с доступной точностью"

Тем не менее, он на самом деле урезан до 53 бит. Если у вас есть суперкомпьютер, способный получать более высокую точность, вы можете получить лучшее приближение числа pi, используя математический модуль для четырехкратного вычисления арктангенса единицы: pi=4*math.atan(1).

То же самое можно сказать о phi, которые имеют хорошее приближение с решением квадратного уравнения x² + x -1 = 0: phi=(1+math.sqrt(5))/2.