Python의 List 활용

Ruah·2024년 9월 15일

theory

목록 보기
4/11

다른 언어의 리스트나 배열은 일반적으로 고정 크기, 단일 데이터 타입, 제한된 변경 가능성 등의 특징을 가지며, 사용 목적에 따라 적합한 자료 구조를 선택해야 한다.

하지만,Python의 리스트는 유연성과 사용 편의성을 제공하며, 다양한 데이터 타입을 혼합하여 저장하고 크기를 동적으로 변경 가능하다.

List 기본 연산 및 활용

리스트 생성

#빈리스트 생성
empty_list = []

# 요소가 있는 리스트 생성
my_list = [1, 2, 3, 4, 5]

요소 접근 & 인덱싱 & 슬라이싱

# 인덱스를 통한 요소 접근
print(my_list[0]) # 출력 : 1 (배열의 제일첫번재 인덱스)

#음수인덱스 (역순접근)
print(my_list[-1]) # 출력 : 5 (마지막 요소)

# 슬라이싱
my_list[1:4] # 인덱스 1부터 3까지의 요소 [2, 3, 4]
my_list[2:] # 배열 마지막 2개의 인덱스 출력 [4, 5]
my_list[:2] # 배열 첫번째부터 2개의 인덱스 출력 [1, 2]

요소 변경

# 인덱스를 사용하여 요소 변경
my_list[2] = 10 

# my_list는 이제 [1, 2, 10, 4, 5]가 된다.

요소 추가

# append() 메서드로 배열 끝에 요소 추가
my_list.append(6)      # [1, 2, 10, 4, 5, 6]

# insert() 메서드로 특정 위치에 요소 추가
my_list.insert(1, 100)     # 인덱스 1에 100 삽입 [1, 100, 2, 10, 4, 5, 6]

요소 삭제

# del 키워드 사용
del my_list[2] # 인덱스 2의 요소 삭제

# pop() 메서드 사용 (인덱스를 지정하지 않으면 마지막 요소를 제거하고 반환)
last_element = my_list.pop() # 마지막 요소 제거

# remove() 메서드 사용
my_list.remove(100) # 값이 100인 요소 제거

리스트 반복

# for 루프를 통한 요소 순회
for item in my_list:
print(item)

리스트 길이 확인

length = len(my_list) # 리스트의 요소 개수 반환

복합리스트

  • 리스트의 리스트를 사용 = 중첩리스트(Nested List)라고도 부름
my_list = [1, 2, ['a', 'b', ['A', 'B'], 'd'], 4, 5]

my_list[2][2][0] #'A'
  • 가독성이 떨어지기 때문에 가급적 사용하지 않는다.

연산

  • 리스트에 덧셈이나 곱셈 연산 사용 가능
[1, 2] + ['a', 'b']       # [1, 2, 'a', 'b']

[1, 2] * 2                # [ 1, 2, 1, 2]

최대값 & 최소값

max([1, 2, 3, 4])

min([1, 2, 3, 4])

요소 찾기

s = ['I', 'i', 's', 't']

# 'i' 요소 인덱스 번호 찾기
s.index('i')  # 1

#Boolean으로 찾기
't' in s       # True
'x' not in s   # True

# s 안의 'I' 요소의 갯수
s.count('I')    # 1
profile
집요한 주니어 개발자의 호되게 당했던 기록

0개의 댓글