python에서 array를 list로 변환, list를 array로 변환하는 법을 다뤄보겠습니다.
아래의 예제코드를 보면서 설명드리겠습니다.
import numpy as np
data = [[0.1,0.2], [0.1,0.2]]
data = numpy.array(data)
print("array :\n",data)
data = data.tolist()
print("list:\n",rdata)
python에서는 일반적으로 data = [[0.1,0.2], [0.1,0.2]]와 같이 선언을 할 경우 list type으로 할당됩니다.
list를 array로 바꾸고 싶다면 data = numpy.array(data)와 같이 numpy.array함수를 이용하면 쉽게 변환이 가능합니다.
반대로 array를 list로 바꾸고 싶다면 data = data.tolist()와 같이 tolist()를 이용해 쉽게 변환이 가능합니다.
실제로 출력된 결과는 아래와 같습니다.
array :
[[ 0.1 0.2]
[ 0.1 0.2]]
list:
[[0.1, 0.2], [0.1, 0.2]]
array일 때와 list일때 생김새가 다르다는 것을 알 수 있습니다.
실제로 shape을 출력해보면 동일하지만 동일한 차원이지만 shape을 출력하는 방식은 다릅니다.
import numpy as np
data = [[0.1,0.2], [0.1,0.2]]
data = np.array(data)
print("array :\n",data.shape)
data = data.tolist()
print("list:\n",np.shape(data))
print("list:\n",data.shape)
array의 경우 data.shape을 이용해 접근이 가능하고 list의 경우에는 np.shape(data)를 이용해야만 접근이 가능합니다.
이경우data.shape과 np.shape(data)의 결과는 둘 다 (2,2)로 동일하게 출력됩니다.
그럼 list data를 data.shape으로 접근하면 어떻게 나올까요?
AttributeError: 'list' object has no attribute 'shape'
위와 같은 error메세지가 나오면서 동작하지 않게 됩니다.
실제로 위 코드의 출력결과는 아래와 같습니다.
array :
(2, 2)
list:
(2, 2)
AttributeError: 'list' object has no attribute 'shape'
이상 list to array, array to list방법이었습니다!!
태그 : python, 파이썬, arraytolist, listtoarray, numpy.array, np.array, tolist, numpy.shape, np.shape, array.shape



덧글