python中复数到极坐标的形式

时间:2016-10-10 04:17:42

标签: python-2.7 math

我是python的新手所以请耐心等待。 问题是:

“编写函数polar(z)将复数转换为极坐标形式(r,theta)。您可以使用math.atan2和math.hypot函数,但不能使用cmath库。”

我甚至不知道从哪里开始,但到目前为止我有:

import math
def polar(z):
    z = a + bj
    r = math.hypot(a,b)
    theta = math.atan2(b,a)
    print "(",r,",",theta,")"

任何帮助都可以!

1 个答案:

答案 0 :(得分:1)

您可以使用object.real和object.imag来获取实数和虚数值。 Check this answer

import math
def polar(z):
    a= z.real
    b= z.imag
    r = math.hypot(a,b)
    theta = math.atan2(b,a)
    return r,theta # use return instead of print.

u=3+5j
print polar(u)

输出:

(5.830951894845301, 1.0303768265243125)

读取差异黑白打印并返回功能。