numpy.ndarrayのリスト変換 | Python-izm

ndarrayのリスト変換

ndarrayの配列をPython標準のリスト変換する方法です。

tolist

tolistを用いると既存のndarrayをリストへ変換することができます。

import numpy


na = numpy.array([[1, 10, 100], [2, 20, 200]])
na_list = na.tolist()

print(type(na))
print(na)
print('-----------------------')
print(type(na_list))
print(na_list)
<pre class="result">
<class 'numpy.ndarray'>
[[  1  10 100]
 [  2  20 200]]
-----------------------
<class 'list'>
[[1, 10, 100], [2, 20, 200]]

標準のlist()との相違点

tolistは多次元配列でもすべてリストへ変換されます。それに対しlist()は内包する配列はリストへ変換されず、ndarrayのままです。

import numpy


na = numpy.array([[1, 10, 100], [2, 20, 200]])
na_list_1 = na.tolist()
na_list_2 = list(na)

print(type(na_list_1))
print(type(na_list_1[0]))
print(na_list_1)
print('-----------------------')
print(type(na_list_2))
print(type(na_list_2[0]))
print(na_list_2)
<class 'list'>
<class 'list'>
[[1, 10, 100], [2, 20, 200]]
-----------------------
<class 'list'>
<class 'numpy.ndarray'>
[array([  1,  10, 100]), array([  2,  20, 200])]