numpy tolist()的用法

来源:互联网 发布:java 畅言评论插件 编辑:程序博客网 时间:2024/06/08 08:41

1. 将数组或者矩阵转换成列表
如下:

>>> from numpy import *>>> a1 = [[1,2,3],[4,5,6]] # a1是列表>>> a2 = array(a1) # 列表——>数组>>> a2array([[1, 2, 3],       [4, 5, 6]])>>> a3 = mat(a1) # 列表——>矩阵>>> a3matrix([[1, 2, 3],        [4, 5, 6]])>>> a4 = a2.tolist()  # 数组——>列表>>> a4[[1, 2, 3], [4, 5, 6]]>>> a5 = a3.tolist()  # 矩阵——>列表>>> a5[[1, 2, 3], [4, 5, 6]]>>> a4 == a5 True>>> a6 = mat(a2)   # 数组--> 矩阵>>> a6matrix([[1, 2, 3],        [4, 5, 6]])>>> a6 == a3matrix([[ True,  True,  True],        [ True,  True,  True]], dtype=bool)>>> a7 = array(a3)  # 矩阵--> 数组 >>> a7array([[1, 2, 3],       [4, 5, 6]])>>> a7 == a2array([[ True,  True,  True],       [ True,  True,  True]], dtype=bool)>>> 

2. 但是当矩阵是一维的时候,就不同了,所以一维矩阵经常会有tolist()[0]:

>>> a1 =[1,2,3,4,5,6] # 列表>>> a2 = array(a1)   # 列表 --> 数组 >>> a2array([1, 2, 3, 4, 5, 6])>>> a3 = mat(a1)      #列表 ----> 矩阵>>> a3matrix([[1, 2, 3, 4, 5, 6]])>>> a4 = a3.tolist()   #矩阵 ---> 列表>>> a4[[1, 2, 3, 4, 5, 6]]  # 注意!!有不同  >>> a1 == a4False>>> a8 = a3.tolist()[0]   #矩阵 ---> 列表  >>> a8[1, 2, 3, 4, 5, 6]  # 注意!!有不同 >>> a1 == a8True>>> a5 = a2.tolist()   # 数组 ---> 列表>>> a5[1, 2, 3, 4, 5, 6]>>> a5 == a1True>>> a6 = mat(a2)   # 数组 ---> 矩阵  >>> a6matrix([[1, 2, 3, 4, 5, 6]])>>> a6 == a3matrix([[ True,  True,  True,  True,  True,  True]], dtype=bool)>>> a7 = array(a3)  # 矩阵 ---> 数组 >>> a7array([[1, 2, 3, 4, 5, 6]])>>> a7 == a2array([[ True,  True,  True,  True,  True,  True]], dtype=bool)>>> 

参考:http://blog.csdn.net/m0_37477175/article/details/72828311

原创粉丝点击