在 Python 中将列表转为 NumPy 数组
Manav Narula
2023年1月30日
列表和数组是 Python 中两个最基本且最常用的集合对象。
它们都是可变的,用于以通用名称存储元素的集合,并且每个元素都有可用于访问它的特定索引。
但是,有一些显着差异。列表 Python 中的内置数据类型,而对于数组,我们需要导入 arrays
或 NumPy
模块,并在使用它们之前声明数组。数组还可以更有效地将数据存储在内存中,并被广泛用于数学运算。
在本教程中,我们将列表转换为 NumPy 数组。
在 Python 中使用 numpy.array()
将列表转换为 NumPy 数组
numpy.array
函数用于在 Python 中声明和创建数组。在此函数中,我们通常在方括号中指定元素以直接传递给列表。它也适用于列表的列表。例如,
import numpy as np
l1 = [5, 7, 8]
arr = np.array(l1)
print(arr, arr.shape)
l2 = [[1, 5, 8], [18, 9, 2]]
arr_d = np.array(l2)
print(arr_d, arr_d.shape)
输出:
[5 7 8] (3,)
[[ 1 5 8]
[18 9 2]] (2, 3)
在 Python 中使用 numpy.asarray()
将列表转换为 NumPy 数组
numpy.asarray()
用于将不同类型的对象(如字典,列表等)转换为 numpy 数组。在下面的代码中,我们将使用 asarray()
函数把一个列表转换成一个 numpy 数组。
import numpy as np
l1 = [5, 7, 8]
arr = np.asarray(l1)
print(arr, arr.shape)
l2 = [[1, 5, 8], [18, 9, 2]]
arr_d = np.asarray(l2)
print(arr_d, arr_d.shape)
输出:
[5 7 8] (3,)
[[ 1 5 8]
[18 9 2]] (2, 3)
请注意,上述两种方法都可以将列表的列表转换为 numpy 数组。
作者: 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