NumPy数组转Python列表:高效转换与实用技巧

简介

利用NumPy,可以使用tolist()函数将np.array对象转换为Python列表。tolist()函数不接受任何参数。如果数组是一维的,则返回包含数组元素的列表。对于多维数组,则返回一个嵌套列表。

前提条件

为了完成本教程,您需要具备以下基础:

  • 熟悉Python 3的安装以及使用pip安装包。
  • 熟悉Python编程。

本教程使用Python 3.9.6和NumPy 1.23.3进行测试。

将一维NumPy数组转换为列表

让我们构造一个一维数组 [1, 2, 3]

import numpy as np

# 一维数组转列表
arr_1 = np.array([1, 2, 3])

print(f'NumPy 数组:\n{arr_1}')

这段代码将输出:

NumPy 数组:
[1 2 3]

现在,让我们使用tolist()函数:

import numpy as np

# 一维数组转列表
arr_1 = np.array([1, 2, 3])

print(f'NumPy 数组:\n{arr_1}')

list_1 = arr_1.tolist()

print(f'列表:{list_1}')

这段新代码将输出:

列表:[1, 2, 3]

该数组已从NumPy数组转换为Python列表。

将多维NumPy数组转换为列表

让我们构建一个多维数组:[[1, 2, 3], [4, 5, 6]]

import numpy as np

# 二维数组转列表
arr_2 = np.array([[1, 2, 3], [4, 5, 6]])

print(f'NumPy 数组:\n{arr_2}')

这段代码将输出:

NumPy 数组:
[[1 2 3]
 [4 5 6]]

现在,让我们使用tolist()

import numpy as np

# 二维数组转列表
arr_2 = np.array([[1, 2, 3], 4, 5, 6]])

print(f'NumPy 数组:\n{arr_2}')

list_2 = arr_2.tolist()

print(f'列表:{list_2}')

这段新代码将输出的结果是:

列表:[[1, 2, 3], [4, 5, 6]]

该数组已从NumPy数组转换为Python列表。

结论

在这篇文章中,您学习了如何使用tolist()np.array对象转换为Python列表。它适用于一维和多维数组。

参考文献

bannerAds