在 Python 中将列表转为 NumPy 数组

Manav Narula 2023年1月30日
  1. 在 Python 中使用 numpy.array() 将列表转换为 NumPy 数组
  2. 在 Python 中使用 numpy.asarray() 将列表转换为 NumPy 数组
在 Python 中将列表转为 NumPy 数组

列表和数组是 Python 中两个最基本且最常用的集合对象。

它们都是可变的,用于以通用名称存储元素的集合,并且每个元素都有可用于访问它的特定索引。

但是,有一些显着差异。列表 Python 中的内置数据类型,而对于数组,我们需要导入 arraysNumPy 模块,并在使用它们之前声明数组。数组还可以更有效地将数据存储在内存中,并被广泛用于数学运算。

在本教程中,我们将列表转换为 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 Narula avatar Manav Narula avatar

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