数字python的平方根

use*_*341 -6 python math.sqrt square-root

这是我的代码:

import cmath
root = (cmath.sqrt(25))
print (root)
raw_input()
Run Code Online (Sandbox Code Playgroud)

我面临的问题是root的结果是5 + 0j,这是不可取的,我只想要平方根.我怎样才能解决这个问题?

Mar*_*ers 6

使用math模块而不是cmath模块; 后者仅适用于复数:

>>> import math
>>> print math.sqrt(25)
5.0
Run Code Online (Sandbox Code Playgroud)

对于它的价值,cmath结果是正确的,如果你期望一个复数.您可以只获取.real结果的组件,但由于math模块中有一个等效的常规浮点,因此让计算机完成额外的工作是没有意义的.