본문 바로가기
내일배움캠프/python

list와 array의 간단 비교

by useSword 2024. 3. 5.

Array

  1. 배열은 반드시 할당된 공간이 연속적이고 고정적이기 때문이다.
  2. 배열은 인덱스를 기가막히게 잘 찾음(조회가 빠름).
  3. 공간이 연속적이고 고정적이기 때문에 값의 삽입과 삭제에 비효율적.
  4. 동일한 데이터 유형만 저장할 수 있습니다

→ 효율적인 저장만을 목적으로 사용하고 싶을 때

 

ex) 1번 예시
배열에서 1번으로 추가하기. 화장실 앞 5명의 줄이 있고 1번으로 들어가기 위해 5명을 새치기하는 것과 같다. 다른사람들이 새치기범 떄문에 뒤로 밀려간 것처럼 배열도 추가를 하면 고정되어있었던 데이터에 뒤로 밀려나는 영향이 간다.

 

 

ex) 4번의 예시

import numpy as np

b = np.array([1, 3, 5, 'a', 'b'])

숫자형과 문자열이 섞이면 모두 문자열로 전환된다.

기존의 1,3,5도 문자형으로 전환된다.'1', '3', '5', 'a', 'b'의 문자열로 전환

 

 

 

List

  1. 배열의 단점을 보완하기 위해 만듬. 각 리스트 객체에는 id가 있기 때문에 삽입, 삭제가 쉬움
  2. 리스트는 다양한 타입의 데이터를 다룰 수 있는 범용성을 가지고 있지만, 이로 인해 배열에 비해 상대적으로 연산 속도가 느립니다
  3. 다양한 데이터를 함께 저장할 수 있습니다.
  4. 검색 성능이 좋지 않음, 직접적인 접근이 불가능하고, 처음부터 찾아야한다

→ 편하게 동적으로 사용하고 싶을 때

 

구분 List Array
데이터 유형 다양한 유형 혼합 가능
동일한 유형만 가능
속도 느림 빠름
메모리 사용 많음 적음
기능 다양함 제한적
구현 방식 Python 기본 C 래핑
주요 용도 다양한 데이터 저장 및 조작
수치 계산 및 데이터 분석
장점 유연하고 편리 빠르고 효율적
단점 느리고 메모리 사용량 많음 기능 제한적

'내일배움캠프 > python' 카테고리의 다른 글

중요 개념  (0) 2024.02.24
파이썬 문법 심화과정  (0) 2024.02.22
파이썬 문법  (1) 2024.02.20
TIL(데이터를 Flask로 받기,배포하기,listplz 사이드메뉴)  (1) 2024.01.30
파이썬-2일차  (1) 2024.01.26