김우석 개발자

Python list datatype

개요 : Python의 list는 array와 어떤점 이다를까

list와 array


list는 파이썬에서 사용되는 항목들을 모아 놓은 자료 구조이다. list의 특징은

  • list의 요소들은 대괄호에 묶여 있다. ex) [1, 2, 3]
  • list는 순서가 있어서, 인덱스를 사용하여 요소에 접근할 수 있다.
  • list는 변경 가능하여, 특정 요소를 제거하거나 추가할 수 있다.
  • list는 고유의 값을 갖지 않아도 된다. 복사, 분리가 자유롭다.
  • 요소들은 다른 자료형이어도 상관없다. 하나의 list에 str, int, object가 들어갈 수 있다.

array또한 항목들을 모아 놓은 자료구조이다. list와 같이 array도 대괄호에 묶여 있고 순서가 있으며 변경 가능하다. 그리고 고유의 값을 갖지 않아도 상관없다.

하지만 하나의 array에 다른 자료형을 넣을 수 없다.

import array as arr

array_1 = arr.array("i", [3, 6, 9, 12])
print(array_1)
print(type(array_1))

'''
arr.array의 첫번째 인자에 들어가는 문자의 의미
				Type code   C Type             Minimum size in bytes
        'b'         signed integer     1
        'B'         unsigned integer   1
        'u'         Unicode character  2 (see note)
        'h'         signed integer     2
        'H'         unsigned integer   2
        'i'         signed integer     2
        'I'         unsigned integer   2
        'l'         signed integer     4
        'L'         unsigned integer   4
        'q'         signed integer     8 (see note)
        'Q'         unsigned integer   8 (see note)
        'f'         floating point     4
        'd'         floating point     8
'''

list와 array는 무엇이 다른가

  1. array는 호출이 필요하다.
  2. array는 더 많은 양의 데이터를 저장할 수 있다
  3. array는 숫자 연산에 효율적이다. list는 요소들을 직접적으로 연산할 수 없지만 array는 가능하다
array = np.array([3, 6, 9, 12])
division = array/3
print(division)
print (type(division))

[1. 2. 3. 4.]
<class 'numpy.ndarray'>

참고자료 : https://learnpython.com/blog/python-array-vs-list/

같은 카테고리의 글