在 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
不是x
和j
的隐式乘法,而是用两个字符拼写的一个单独的标识符词。您可以将它用作变量名并为其分配一个单独的值,就像名称 x
、j
和 foo
.
使用 complex() 构造函数:
代码:
x = 5
a = complex(2, x)
print(a)
输出:
(2+5j)
我是 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
不是x
和j
的隐式乘法,而是用两个字符拼写的一个单独的标识符词。您可以将它用作变量名并为其分配一个单独的值,就像名称 x
、j
和 foo
.
使用 complex() 构造函数:
代码:
x = 5
a = complex(2, x)
print(a)
输出:
(2+5j)