我想知道是否有一些模块我可以将小数转换为根,如:
>>> x = 1.7320508075688772
>>> f(x)
'√3'
作为一个字符串。 希望你帮帮我。
答案 0 :(得分:2)
假设我已经猜到了你正确提出的问题,你可以使用sympy.nsimplify
[docs]来识别并简化数字(使用identify
mpmath
函数在幕后):
>>> import sympy
>>> sympy.nsimplify(1.7320508075688772)
sqrt(3)
但是有许多涉及精确和虚假识别的警告。
答案 1 :(得分:2)
类似的东西,使用math
模块:
In [16]: strs="1,7320508075688772"
In [17]: num=float(".".join(strs.split(",")))
In [19]: math.ceil(num**2)
Out[19]: 3.0
<强>类似地:强>
In [25]: math.ceil(1.414**2)
Out[25]: 2.0
In [26]: math.ceil(2.23606**2)
Out[26]: 5.0
In [28]: math.ceil(1.7320508075688772**2)
Out[28]: 3.0