NumPy 数组中的虚数
Manav Narula
2023年1月30日
在 Python 中,我们可以使用实数和虚数。
为了表示一个复数,我们只需在末尾添加 j
。例如,以下字符串表示一个虚数。
a = 5 + 2j
print(a, type(a))
输出:
(5+2j) <class 'complex'>
在本教程中,我们将学习如何处理 numpy 数组中的虚数。
如前所述,我们可以简单地通过添加 j
来创建复数。我们可以使用诸如 numpy.array()
,numpy.arange()
之类的不同函数将该文字广播到数组中。有关 numpy 数组中复数的各种示例,请参见下面的代码。
arr_1 = 1j * np.arange(5)
arr_2 = np.array([2 + 1j, 3 + 4j, 5 + 2j])
print(arr_1)
print(arr_2)
输出:
[0.+0.j 0.+1.j 0.+2.j 0.+3.j 0.+4.j]
[2.+1.j 3.+4.j 5.+2.j]
使用 numpy.complex
类将虚数存储在 NumPy 数组中
创建复杂对象的另一种方法是使用 numpy 模块提供的 complex
类。这将返回一个复杂的对象,该对象可以再次存储在数组中,如先前方法所述。
例如,
a = np.complex(1 + 1j)
c = a * np.arange(5)
print(c)
输出:
[0.+0.j 1.+1.j 2.+2.j 3.+3.j 4.+4.j]
使用 dtype
参数将虚数存储在 numpy 数组中
在数组中启动虚数的另一种方法是通过在一些 numpy 数组函数中指定 dtype
参数。众所周知,我们可以使用 numpy.zeros()
和 numpy.ones()
函数分别创建 0 和 1 的数组。在这里,我们可以将 dtype
参数指定为 complex
以获得具有复杂值的结果数组。
以下代码对此进行了说明。
z = np.ones(4, dtype=complex) * 2
print(z)
输出:
[2.+0.j 2.+0.j 2.+0.j 2.+0.j]
作者: Manav Narula
Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.
LinkedIn