[Python] 리스트 자료형 정리

2022. 4. 26. 18:00·Python/Basic
반응형

 


리스트란

리스트(List)는 여러 개의 데이터를 묶어 관리할 수 있는 자료형입니다.

리스트는 비슷한 유형의 데이터들을 관리할 때 중요하게 사용됩니다.


예를 들어, 과목 이름을 갖는 데이터들을 관리할 때

subject1 = "Math"
subject2 = "Science"
subject3 = "English"

다음과 같이 과목 이름 데이터를 하나하나 선언하는 것보다는

subjects = ["Math", "Science", "English"]

다음과 같이 리스트를 생성하여 관리하는 것이 좋습니다.


리스트 선언

리스트는 아래와 같은 방법으로 선언할 수 있습니다.

list = list()
list = []

또는 초기화와 동시에 값을 할당하기 위해서 다음과 같이 사용합니다.

list = [object1, object2, ..., objectn]

 


리스트 요소 접근

인덱싱이나 슬라이싱을 통해서 리스트의 요소에 접근할 수 있습니다.

인덱스 (Index) : 리스트에서 요소의 지정된 번호 (0부터 시작)

인덱싱

한 개의 요소에 접근할 때 다음과 같이 사용합니다.

list[index] # index에 대응하는 요소를 반환합니다.

subjects = ["Math", "Science", "English"]

subjects[1] 
# subjects[1]은 subjects의 두번째 요소를 의미합니다.
# 따라서 "Science"를 출력합니다.

subjects[-1]
# subject[-1]은 subjects의 뒤에서 첫번째 요소를 의미합니다.
# 따라서 "English"를 출력합니다.

슬라이싱

두 개 이상의 요소에 접근할 때 다음과 같이 사용합니다.

list[start:end:step] # 조건에 맞는 요소들을 반환합니다.
# start : 슬라이싱을 시작할 위치
#   end : 슬라이싱을 끝낼 위치 (end는 포함되지 않습니다.)
#  step : 슬라이싱의 보폭

# 전체적으로 range()와 비슷합니다.

subjects = ["Math", "Science", "English"]

subjects[0:1] 
# subjects[0:1]은 subjects의 1~2번째 요소를 의미합니다.
# ["Math", "Science"]를 리스트로 출력합니다.

subjects[-2:]
# subjects[-2:]은 subjects의 뒤에서 2~1번째 요소를 의미합니다.
# ["Science", "English"]를 리스트로 출력합니다.

 


index()

index()는 요소의 인덱스를 반환하는 메서드입니다.

(같은 요소가 존재하는 경우 가장 첫 요소의 인덱스를 반환합니다.)

list.index(object)

subjects = ["Math", "Science", "English"]

subjects.index("English")
# "English"의 인덱스인 2를 반환합니다.

append()

append()는 리스트에 요소를 추가하는 메서드입니다.

list.append(object)

subjects = ["Math", "Science", "English"]

subjects.append("History")
# subjects 리스트에 "History"를 추가합니다.
# subjects 리스트는 ["Math", "Science", "English", "History"]가 됩니다.

extend()

extend()는 리스트에 리스트를 추가하는 메서드입니다.

list.extend(list)

subjects = ["Math", "Science", "English"]

subjects.extend(["History", "Society"])
# subjects 리스트에 ["History", "Society"] 리스트를 추가합니다.
# subjects 리스트는 ["Math", "Science", "English", "History", "Society"]가 됩니다.

insert()

insert()는 리스트의 원하는 인덱스에 요소를 삽입하는 메서드입니다.

삽입된 인덱스 뒤의 요소들은 한 인덱스씩 밀려납니다.

list.insert(index, object)

subjects = ["Math", "Science", "English"]

subjects.insert(1, "History")
# subjects 리스트의 1번 인덱스에 "History"를 삽입합니다.
# subjects 리스트는 ["Math", "History", "Science", "English"]가 됩니다.

remove()

remove()는 리스트의 특정 요소를 제거하는 메서드입니다.

같은 요소가 존재하는 경우 가장 첫 요소를 제거합니다.

list.remove(object)

subjects = ["Math", "Science", "English"]

subjects.remove("Science")
# subjects 리스트에서 "Science" 요소를 제거합니다.
# subjects 리스트는 ["Math", "English"]가 됩니다.

pop()

pop()은 리스트의 마지막 요소를 반환하고 리스트에서 삭제하는 메서드입니다.

list.pop() # 가장 마지막 요소를 반환합니다.
list.pop(index) # index에 대응하는 요소를 반환합니다.

subjects = ["Math", "Science", "English"]

subjects.pop()
# subjects 리스트에서 마지막 요소인 "English"를 반환합니다.
# subjects 리스트는 ["Math", "Science"]가 됩니다.

clear()

clear()는 리스트의 모든 요소를 제거하는 메서드입니다.

list.clear()

subjects = ["Math", "Science", "English"]

subjects.clear()
# subjects 리스트는 []가 됩니다.

count()

count()는 리스트의 특정 요소의 개수를 반환하는 메서드입니다.

list.count(object)

number_list = [1, 1, 1, 2, 2, 3, 4]

number_list.count(1)
# number_list 리스트에서 1은 모두 3개가 존재하므로 3을 반환합니다.

copy()

copy()는 리스트의 복사본을 반환하는 메서드입니다.

list.copy()

subjects1 = ["Math", "Science", "English"]

subjects2 = subjects1.copy()
# subjects2 리스트는 ["Math", "Science", "English"]가 됩니다.
# subjects2 = subjects1[:]도 같은 기능을 합니다.

reverse()

reverse()는 리스트의 요소를 역순으로 정렬하는 메서드입니다.

list.reverse()

subjects = ["Math", "Science", "English"]

subjects.reverse()
# subjects 리스트는 ["English", "Science", "Math"]가 됩니다.

sort()

sort()는  리스트의 요소를 정렬하는 메서드입니다.

list.sort(*, key=None, reverse=False) # 키워드로만 전달할 수 있는 두 개의 인자를 받습니다.
list.sort() # 기본값은 가나다순(문자열로만 구성된 리스트)/숫자순(숫자로만 구성된 리스트)으로 정렬합니다.

subjects = ["English", "Math", "Science", "History", "Art"]

subjects.sort(key=len) # subjects 리스트를 이름의 길이 순으로 정렬합니다.
# subjects 리스트는 ["Art", "Math", "English", "Science", "History"]가 됩니다.
반응형
  1. 리스트란
  2. 리스트 선언
  3. 리스트 요소 접근
  4. 인덱싱
  5. 슬라이싱
  6. index()
  7. append()
  8. extend()
  9. insert()
  10. remove()
  11. pop()
  12. clear()
  13. count()
  14. copy()
  15. reverse()
  16. sort()
'Python/Basic' 카테고리의 다른 글
  • [Python] 딕셔너리 자료형 정리
  • [Python] 조건문과 반복문
  • [Python] 변수와 자료형
  • [Python] 시작하기
HYEOKJUN
HYEOKJUN
프로그래밍 관련 수업이나 웹 사이트에서 직접 얻은 정보를 공유하는 블로그입니다. (일부 잘못된 정보가 포함될 수 있습니다)
  • HYEOKJUN
    HYEOKJUN
    HYEOKJUN
  • 전체
    오늘
    어제
    • 분류 전체보기 (53)
      • UNITY (18)
        • Tool (9)
        • Script (9)
      • C | C++ (20)
        • Basic (11)
        • STL (8)
        • ETC (1)
      • C# (1)
        • Basic (0)
        • ETC (1)
      • Python (8)
        • Basic (7)
        • Library (1)
        • ETC (0)
      • WEB (2)
        • Basic (2)
      • Skill (0)
        • 자료구조 (0)
      • Workspace (0)
      • ETC (4)
  • 블로그 메뉴

    • 인기 글

    • 태그

      조건문
      vector
      Unity
      컨테이너
      Localization
      queue
      std
      C
      Python
      red-black tree
      stack
      while
      변수
      자료형
      Package
      반복문
      식별자
      C++
      C#
      포인터
    • 최근 글

    • hELLO· Designed By정상우.v4.10.3
    HYEOKJUN
    [Python] 리스트 자료형 정리

    개인정보

    • 티스토리 홈
    • 포럼
    • 로그인
    상단으로

    티스토리툴바

    단축키

    내 블로그

    내 블로그 - 관리자 홈 전환
    Q
    Q
    새 글 쓰기
    W
    W

    블로그 게시글

    글 수정 (권한 있는 경우)
    E
    E
    댓글 영역으로 이동
    C
    C

    모든 영역

    이 페이지의 URL 복사
    S
    S
    맨 위로 이동
    T
    T
    티스토리 홈 이동
    H
    H
    단축키 안내
    Shift + /
    ⇧ + /

    * 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.