📅  最后修改于: 2023-12-03 14:46:06.846000             🧑  作者: Mango
该方法用于将极坐标下的复数转换为笛卡尔坐标下的复数。该函数返回一个复数。参数分别为模长和辐角。
cmath.rect(r, phi)
r
:复数的模长,浮点数或整数phi
:复数的辐角,浮点数或整数(以弧度表示)返回值为复数。
import cmath
# 将 (2, 3) 转换为极坐标下的复数
polar = cmath.polar(2 + 3j)
# 将极坐标下的复数转换为笛卡尔坐标下的复数
cartesian = cmath.rect(polar[0], polar[1])
print("Polar coordinates: {}".format(polar))
print("Rectangular coordinates: {}".format(cartesian))
输出:
Polar coordinates: (3.605551275463989, 0.982793723247329)
Rectangular coordinates: (2+3j)
以上示例中,我们首先使用 cmath.polar()
方法将复数 (2, 3)
转换为极坐标下的复数,返回 (3.605551275463989, 0.982793723247329)
。然后使用 cmath.rect()
方法将极坐标下的复数转换为笛卡尔坐标下的复数,最终返回 (2+3j)
。
此外,如果我们想要得到一个由单个复数变量转换得到的复数,我们还可以直接传入该复数的极坐标参数,如下所示:
import cmath
# 将复数 (2, 3) 转换为极坐标下的复数
polar = cmath.polar(2 + 3j)
# 直接传入极坐标参数,将复数转换为笛卡尔坐标下的复数
rect = cmath.rect(*polar)
print("Polar coordinates: {}".format(polar))
print("Rectangular coordinates: {}".format(rect))
输出:
Polar coordinates: (3.605551275463989, 0.982793723247329)
Rectangular coordinates: (2+3j)
结果与上例相同。