IT

초보자를 위한 파이썬 리스트 정리

carnival6103 2025. 2. 3. 21:08
반응형

파이썬에서 **리스트(List)**는 데이터를 순서대로 저장하는 데 사용되는 가장 기본적인 자료형 중 하나입니다. 리스트는 다양한 종류의 데이터를 담을 수 있으며, 자유롭게 요소를 추가, 삭제, 변경할 수 있다는 장점이 있습니다.

1. 리스트의 기본

1.1 리스트 생성

리스트는 대괄호 [] 안에 쉼표로 구분된 요소들을 나열하여 생성합니다.

Python
 
my_list = [1, 2, 3, "hello", 3.14]

1.2 리스트 요소 접근

리스트의 요소에는 인덱스를 통해 접근할 수 있습니다. 인덱스는 0부터 시작하며, 음수 인덱스를 사용하여 뒤에서부터 요소를 접근할 수도 있습니다.

Python
 
my_list[0]  # 1
my_list[-1] # 3.14

1.3 리스트 길이

len() 함수를 사용하여 리스트의 길이를 구할 수 있습니다.

Python
 
len(my_list) # 5

2. 리스트 조작

2.1 요소 추가

  • append(): 리스트의 맨 뒤에 요소를 추가합니다.
Python
 
my_list.append(True) # [1, 2, 3, "hello", 3.14, True]
  • insert(): 지정된 인덱스에 요소를 삽입합니다.
Python
 
my_list.insert(2, "python") # [1, 2, "python", 3, "hello", 3.14, True]
  • extend(): 다른 리스트의 모든 요소를 현재 리스트에 추가합니다.
Python
 
my_list.extend([4, 5, 6]) # [1, 2, "python", 3, "hello", 3.14, True, 4, 5, 6]

2.2 요소 삭제

  • remove(): 지정된 값을 가진 첫 번째 요소를 삭제합니다.
Python
 
my_list.remove("hello") # [1, 2, "python", 3, 3.14, True, 4, 5, 6]
  • pop(): 지정된 인덱스의 요소를 삭제하고 반환합니다.
Python
 
my_list.pop(2) # "python" 반환, 리스트는 [1, 2, 3, 3.14, True, 4, 5, 6]
  • del: 지정된 범위의 요소를 삭제합니다.
Python
 
del my_list[1:3] # [1, 3.14, True, 4, 5, 6]
  • clear(): 리스트의 모든 요소를 삭제합니다.
Python
 
my_list.clear() # []

2.3 요소 변경

리스트의 요소는 인덱스를 통해 직접 변경할 수 있습니다.

Python
 
my_list[0] = 10 # [10, 3.14, True, 4, 5, 6]

2.4 리스트 정렬

  • sort(): 리스트를 오름차순으로 정렬합니다.
Python
 
my_list.sort() # [3.14, 4, 5, 6, 10, True]
  • reverse(): 리스트를 뒤집습니다.
Python
 
my_list.reverse() # [True, 10, 6, 5, 4, 3.14]

3. 리스트 활용

3.1 리스트 컴프리헨션

리스트 컴프리헨션은 간결한 문법으로 리스트를 생성하는 방법입니다.

Python
 
squares = [x**2 for x in range(10)] # [0, 1, 4, 9, 16, 25, 36, 49, 64, 81]

3.2 리스트와 반복문

리스트는 for 반복문과 함께 자주 사용됩니다.

Python
 
for element in my_list:
    print(element)

3.3 리스트와 함수

함수의 매개변수로 리스트를 전달하거나, 함수에서 리스트를 반환할 수 있습니다.

Python
 
def process_list(my_list):
    # ...
    return new_list

4. 리스트 관련 팁

  • 리스트는 mutable(변경 가능)한 객체입니다.
  • 리스트의 요소는 다양한 자료형을 가질 수 있습니다.
  • 리스트는 중첩될 수 있습니다 (리스트 안에 리스트를 포함하는 것).

5. 결론

리스트는 파이썬에서 매우 강력하고 유용한 자료형입니다.

반응형