在 python 中表示复数

Representing complex numbers in python

我是 python 的新手,抱歉,如果这对某些人来说似乎非常初级。我知道复数可以简单地用整数后的 j 来表示,例如

a = 2 + 5j

然而,当我尝试类似下面的代码时,python returns 出现错误并且不认为这是复杂的?

x = 5

a = 2 + xj

同样这不起作用:

a = 2 + x*j

我怎样才能解决这个问题。我正在尝试使用这个原则是一些更大的代码。

j 就像小数点或浮点指数表示法中的 e:它是数字文字本身的表示法的一部分,而不是您可以像减号一样附加的运算符签名。

如果要将 x 乘以 1j,则必须使用乘法运算符。那是 x * 1j.

j 本身就是一个标识符,就像 x 一样。如果它不以点或数字开头,则不是数字符号。但是你可以给它赋值,比如 j = 1j,然后 x * j 就有意义了。

同样,xj不是xj的隐式乘法,而是用两个字符拼写的一个单独的标识符词。您可以将它用作变量名并为其分配一个单独的值,就像名称 xjfoo.

使用 complex() 构造函数:

代码:

x = 5
a = complex(2, x)
print(a)

输出:

(2+5j)