Development(개발 공부)/Python & AI

[Python] 파이썬 기초 10: 리스트 자유자재로 다루기(함수)와 튜플(Tuple)의 모든 것 💻✨

jsummer07 2026. 10. 20. 19:09

안녕하세요! 스마트인재개발원 파이썬 공부 기록입니다.
지난 시간에 리스트의 기본 구조와 인덱싱/슬라이싱을 배웠다면, 이번 시간에는 리스트를 내 마음대로 추가·수정·삭제·정렬할 수 있는 핵심 내장 함수들과 리스트의 단짝인 '튜플(Tuple)'에 대해 알아보겠습니다! 🚀


1. 리스트를 내 마음대로! 리스트 주요 함수 (메서드)

리스트는 가변적이어서 생성한 후에도 데이터를 마음대로 조작할 수 있습니다. 실무에서 가장 많이 쓰이는 함수들을 정리해 볼게요!

  • append(값): 리스트의 맨 마지막에 새로운 값을 차곡차곡 추가합니다.
  • insert(인덱스번호, 값): 원하는 특정 인덱스 위치에 값을 쏙 집어넣습니다.
  • 값 수정: 리스트명[인덱스번호] = 새로운값 형태로 기존 데이터를 덮어씌워 수정합니다.
  • 삭제 (del vs remove)
    • del 리스트명[인덱스번호]: 특정 방 번호(인덱스)를 지정해서 삭제합니다.
    • 리스트명.remove(값): 삭제하고 싶은 실제 값을 직접 지정해서 삭제합니다.
  • 정렬 (sort & reverse)
    • 리스트명.sort(): 오름차순(기본)으로 정렬하며, reverse=True를 넣으면 내림차순으로 정렬됩니다.
    • 리스트명.reverse(): 데이터의 순서를 단순히 거꾸로 뒤집어 줍니다.
  • 위치 반환과 길이 (index & len)
    • 리스트명.index(값): 특정 값이 몇 번 인덱스에 있는지 위치를 알려줍니다.
    • len(리스트명): 리스트에 들어있는 전체 요소의 개수(길이)를 반환합니다.

💡 리스트 함수 실습 코드

list7 = [1, 2, 3, 4]

# 1. 값 추가 (append & insert)
list7.append(5)         # [1, 2, 3, 4, 5]
list7.insert(2, 9)      # [1, 2, 9, 3, 4, 5] (2번 인덱스에 9 추가)

# 2. 값 수정
list8 = [2, 7, 8, 9, 1]
list8[1] = 3             # 1번 인덱스의 7을 3으로 수정 -> [2, 3, 8, 9, 1]

# 3. 값 삭제 (del & remove)
list9 = ['a', 'b', 'c', 'd', 'e']
del list9[2]            # 'c' 삭제 -> ['a', 'b', 'd', 'e']
list9.remove('e')       # 'e' 값 삭제 -> ['a', 'b', 'd']

# 4. 정렬과 길이 구하기
list10 = [9, 5, 8, 7, 1]
list10.sort()           # 오름차순 정렬
list10.sort(reverse=True) # 내림차순 정렬
print(len(list10))      # 리스트 길이 출력


2. 데이터가 변하면 안 될 때! 튜플(Tuple)

튜플은 리스트와 아주 비슷하지만, 결정적인 차이가 있는 파이썬의 또 다른 자료구조입니다.

  • 생성 방법: 소괄호 ()를 사용하며, 내부 값은 콤마(,)로 구분합니다.
  • 특징: 리스트와 마찬가지로 인덱싱과 슬라이싱을 통해 데이터를 꺼내 쓸 수 있습니다.
  • 불변성 (Immutable): 리스트와 달리 한 번 생성되면 요소의 추가, 수정, 삭제가 불가능합니다! (실행하면 AttributeError나 에러가 발생해요). 유일하게 사용할 수 있는 함수는 전체 길이를 구하는 len() 정도입니다.

💡 튜플 실습 및 특징 코드

# 1. 튜플 생성
tuple1 = ()
tuple2 = (1, 2, 3)
tuple3 = ('썸머', '공부 중', 3)

# 2. 인덱싱과 슬라이싱은 가능!
print(tuple3[0])     # '썸머' 출력
print(tuple3[0:2])   # ('썸머', '공부 중') 출력

# 3. 추가, 수정, 삭제 시도 시 에러 발생!
# tuple3.append('안녕') -> 에러!
# tuple3[0] = '여름'    -> 에러!


3. 리스트 vs 튜플, 언제 무엇을 써야 할까요?

  • 공통점: 자료형에 상관없이 여러 데이터를 하나로 묶어 관리할 수 있고, 순서(인덱스)가 있어 인덱싱/슬라이싱이 가능합니다.
  • 차이점 요약:
  • 리스트 []: 가변적(Mutable). 요소가 언제든 추가·변경될 수 있는 유연한 상황에 사용합니다.
  • 튜플 (): 불변적(Immutable). 프로그램 실행 중에 절대 값이 바뀌면 안 되는 중요한 데이터를 안전하게 보호하고 싶을 때 사용합니다.

📝 오늘 공부를 마치며

데이터를 다루는 양대 산맥인 리스트와 튜플까지 정복 완료했습니다!
다음 기록부터는 파이썬의 꽃이라고 할 수 있는 반복문(for, while)으로 더 신나는 코딩 세계를 펼쳐볼게요. 다음 빌드 일지에서 만나요! 🚀🦢✨