Python cmath如何在exp';s指数?
我知道Python cmath如何在exp';s指数?,python,python-3.x,math,Python,Python 3.x,Math,我知道Python中的cmath用于复杂的数学 import cmath cmath.exp(-2j) 现在我想在其指数中使用一个变量: a = 2 cmath.exp(-a*j) 这将引发一个错误: name 'j' is not defined 如何在exp的指数中使用复数变量?在文本中使用时,j被正确识别为创建了一个复数对象。除此之外,j将被假定为另一个名称,并将触发对其值的查找 您仍然需要在文本中定义它: a = 2j cmath.exp(-a) (-0.4161468365471
Python
中的cmath
用于复杂的数学
import cmath
cmath.exp(-2j)
现在我想在其指数中使用一个变量:
a = 2
cmath.exp(-a*j)
这将引发一个错误:
name 'j' is not defined
如何在exp的指数中使用复数变量?在文本中使用时,
j
被正确识别为创建了一个复数对象。除此之外,j
将被假定为另一个名称,并将触发对其值的查找
您仍然需要在文本中定义它:
a = 2j
cmath.exp(-a)
(-0.4161468365471424-0.9092974268256817j)
或者,将a
馈送到complex
:
cmath.exp(-complex(0, a)) # or complex(imag=a)
只需将
j
写成1j
,以便解析器知道它是一个数字,而不是一个数字
名为j的变量
a = 2
cmath.exp(-a*1j)
另一种方法是让变量本身包含一个复数,如
在a=2j
中,另一个是使用内置的complex
类名,以“a”作为虚部,明确构造一个复数:
a = 2
cmath.exp(complex(0, -a))
对于不希望在代码中找到复数的人来说,最后一种形式可能更容易阅读。只需将指数写为
1j