Python中ndarray对象和list(列表)的相互转换

Posted 昊虹图像算法

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python中ndarray对象和list(列表)的相互转换相关的知识,希望对你有一定的参考价值。

Python的列表的功能挺多的,但是ndarray对象更强大。

两个咱们都会用到,它们都可以看成是矩阵的一种形式,所以有必要了解下它们之间的互相转换操作。

关于ndarray对象的基础介绍,大家可以参考博文:
https://blog.csdn.net/wenhao_ir/article/details/124416798

关于list(列表)的详细介绍,大家可以参考博文:
https://blog.csdn.net/wenhao_ir/article/details/125400072

接下来,先看ndarray对象怎么转换成list对象。
可以用ndarray对象的方法tolist()实现转换。
示例代码如下:

import numpy as np

ndarray1 = np.array([[1, 2, 3, 4, 5],
                    [6, 7, 8, 9, 10],
                    [11, 12, 13, 14, 15],
                    [16, 17, 18, 19, 20]], dtype='int8')

list1 = ndarray1.tolist()

运行结果如下:

从上面的运行结果可以看出:
ndarray1的每一行被转换为一个列表,存储在list1中。

我们再来看下list对象怎么转换成ndarray对象。
用ndarray对象的方法array()即可实现。
示例代码如下:

import numpy as np

list1 = [[1, 2, 3, 4, 5], [6, 7, 8, 9, 10], [11, 12, 13, 14, 15], [16, 17, 18, 19, 20]]
ndarray1 = np.array(list1)

运行结果如下:


从上面的转换结果可以看出,列表(list)中的每一个列表元素被转换成了ndarray中的一行。

CSDN 社区图书馆,开张营业! 深读计划,写书评领图书福利~

以上是关于Python中ndarray对象和list(列表)的相互转换的主要内容,如果未能解决你的问题,请参考以下文章

python机器学期的常用库

Python标准库中的列表(list数组)操作汇总(大约25种操作),附示例代码

python中numpy.ndarray怎么删除指定下标的元素

Python中既有列表,何必再有数组(NumPy‘s ndarray)?

如何解决 TypeError:'numpy.ndarray' 对象在 Python 上不可调用

numpy