在 Python 中将 NumPy 数组转换为列表
列表和数组是 Python 中两个最基本且最常用的集合对象。
它们都是可变的,用于以通用名称存储元素的集合,并且每个元素都有可用于访问它的特定位置。
但是,有一些显着差异。列表已经在 Python 中内置,而对于数组,我们需要导入 arrays
或 NumPy
模块,并在使用它们之前声明数组。数组还可以更有效地将数据存储在内存中,并被广泛用于数学运算。
在本教程中,我们将把一个 numpy 数组转换为一个列表。
使用 tolist()
方法将一个 NumPy 数组转换为列表
NumPy 数组的 tolist()
方法可以将 NumPy 数组转换为列表。
例如,
import numpy as np
oned = np.array([[1, 2, 3]])
twod = np.array([[1, 2, 3], [4, 5, 6]])
print(oned.tolist())
print(twod.tolist())
输出:
[[1, 2, 3]]
[[1, 2, 3], [4, 5, 6]]
请注意,此方法将整个数组视为一个元素。这就是为什么当我们将其与二维数组一起使用时,它会返回列表列表。
为了避免这种情况,我们可以将 tolist()
与 flatten()
或 ravel()
方法一起使用,它们可以将 N-D 数组转换为线性一维数组。这两种方法执行相同的功能。不同之处在于 ravel()
方法返回数组的参考视图并影响原始数组,而 flatten()
方法对数组的副本起作用。因此,ravel()
函数被认为速度更快,占用的内存更少。
以下代码显示了这些函数的用法。
import numpy as np
oned = np.array([1, 2, 3])
twod = np.array([[1, 2, 3], [4, 5, 6]])
print(oned.flatten().tolist())
print(twod.flatten().tolist())
print(oned.ravel().tolist())
print(twod.ravel().tolist())
输出:
[1, 2, 3]
[1, 2, 3, 4, 5, 6]
[1, 2, 3]
[1, 2, 3, 4, 5, 6]
使用 for
循环将 Python 中的 NumPy 数组转换为列表
对于那些刚接触编程或想要定制最终列表的人来说,这只是一种基本方法。我们遍历一个数组,并将每个元素分别附加到一个空列表中。以下代码实现了这一点。
import numpy as np
arr = np.array([1, 2, 3])
lst = []
for x in arr:
lst.append(x)
print(lst)
输出:
[1, 2, 3]
相关文章
Python 中追加二维数组
发布时间:2023/12/24 浏览次数:158 分类:Python
-
本教程讨论如何在 Python 中将值附加到二维数组。在 Python 中,我们可以有 ND 数组。我们可以使用 NumPy 模块在 Python 中处理数组。
在 Python 中将数组写入文本文件
发布时间:2023/12/24 浏览次数:68 分类:Python
-
本教程演示如何在 python 中将数组保存到文本文件中。读取和写入文件是构建许多用户使用的程序的一个重要方面。Python 提供了一系列可用于资源处理的方法。
Python 导出到 Excel
发布时间:2023/12/24 浏览次数:129 分类:Python
-
有四种主要方法可用于在 Python 中将数据写入 Excel 文件,DataFrame.to_excel() 方法、xlwt 库、openpyxl 库和 XlsWriter 库。
使用 Selenium Python 在浏览器中打开和关闭标签页
发布时间:2023/12/24 浏览次数:92 分类:Python
-
本教程演示了如何在 Python 中使用 Selenium 在浏览器中自动打开一个新标签页。Selenium 是强大的 Web 自动化和测试工具。我们使用 Selenium 编写脚本,它可以控制 Web 浏览器并执行特定操作。
Conda 安装 Cv2
发布时间:2023/12/24 浏览次数:106 分类:Python
-
本教程演示了如何在 Python 中为 anaconda 用户安装 cv2 模块。互联网上有许多可用的 Python IDE。一种这样的 Python IDE 是 Anaconda,这是一种开源软件
使用 OpenCV solvepnp() 函数解决 PnP 问题
发布时间:2023/12/24 浏览次数:85 分类:Python
-
本教程讨论在 Python 中使用 OpenCV 中的 solvepnp 函数。OpenCV 库是一个开源库,旨在帮助完成计算机视觉任务。
Python 中 NumPy 数组的滑动平均值
发布时间:2023/12/24 浏览次数:145 分类:Python
-
本教程演示了如何在 python 中计算 numpy 数组的滑动平均值。滑动平均值通常用于通过计算特定时间间隔的数据平均值来研究时间序列数据。
在 Python 中计算马氏距离
发布时间:2023/12/24 浏览次数:125 分类:Python
-
有两个主要方法可用于在 Python 中查找两个 NumPy 数组之间的马氏距离,scipy 库中的 cdist() 函数和 numpy 包中的 numpy.einsum() 函数。
在 Python 中实现 ReLU 函数
发布时间:2023/12/24 浏览次数:62 分类:Python
-
本教程讨论 Relu 函数以及如何在 Python 中实现它。Relu 函数是机器学习的基础,在使用深度学习时必不可少。