기본적인 리스트 선언
# 빈 리스트 선언
lst1 = []
lst2 = list()
# 5개의 원소가 들어있는 리스트
lst3 = [1, 2, 3, 4, 5]
# int형, str형, bool형, list형 자료형 모두 하나의 리스트에 존재할 수 있다.
lst4 = [1, 2, "안녕", 4, "Hi", , 6, True, [1, 2]]
인덱싱
lst = [1, 2, 3, 4, 5]
# 인덱싱
lst[0] # 1
lst[3] # 4
# 음수를 통해서도 인덱싱 가능
lst[-1] # 5
슬라이싱
이 때 종료지점에 해당하는 원소는 접근하지 않는다.
lst = [1, 2, 3, 4, 5]
lst[0:4:2] # [1, 3]
lst[:2] # [1, 2]
lst[2:] # [3, 4, 5]
lst[1:5] # [2, 3, 4, 5]
리스트 연산
lst1 = [1, 2, 3]
lst2 = [4, 5, 6]
lst3 = lst1 + lst2 # [1, 2, 3, 4, 5, 6]
lst4 = lst1 * 3 # [1, 2, 3, 1, 2, 3, 1, 2, 3]
lst5 = lst1 + "Hello" # error
리스트의 길이
lst = [1, 2, 3]
len(lst) # 3
리스트 수정
lst = [1, 2, 3, 4]
lst[0] = 10
lst # [10, 2, 3, 4]
리스트 원소 추가
lst = [1, 2, 3, 4]
# 마지막 인덱스 뒤에 5를 추가
lst.append(5)
lst # [1, 2, 3, 4, 5]
# 0번째 인덱스에 6을 추가
lst.insert(0, 6)
리스트 원소 삭제
lst = [1, 2, 3, 4, 5]
# 인덱스로 제거
del lst[0]
lst # [2, 3, 4, 5]
del lst[:2]
lst # [5]
# 모든 원소 제거
lst.clear() # []
lst = [4, 5, 6, 7]
# 원소값으로 제거
lst.remove(5)
lst # [4, 6, 7]
리스트 정렬
lst1 = [1, 2, 6, 5, 4, 3]
lst1.sort()
lst1 # [1, 2, 3, 4, 5, 6]
lst2 = [4, 3, 5, 2, 1]
sorted(lst2) # [1, 2, 3, 4, 5]
# lst2의 값은 그대로이다.
lst2 # [4, 3, 5, 2, 1]
# 내림차순 정렬
lst1.sort(reverse=True)
lst1 # [6, 5, 4, 3, 2, 1]
리스트 역순
lst = [4, 2, 3, 1]
lst.reverse()
lst # [1, 3, 2, 4]
리스트 위치 반환
lst = [1, 2, 3]
lst.index(2) # 3
리스트 원소값 꺼내기
lst = [1, 2, 3, 4]
lst.pop() # 4
lst # [1, 2, 3]
리스트 원하는 원소의 개수 세기
lst = [1, 2, 3, 4, 3, 4]
lst.count(3) # 2