반응형
Chapter 01. 자료구조
리스트 연결(extend, +) 완전 정리
주요 개념 요약
리스트에 또 다른 리스트를 붙이는 방법은 크게 두 가지가 있다.
1) extend()
- 기존 리스트를 확장하는 방식
- 리스트 뒤에 다른 리스트의 요소를 하나씩 이어 붙임
- 원본 리스트가 직접 변경됨(in-place)
2) + 덧셈 연산자
- 리스트와 리스트를 새로운 리스트로 합치는 방식
- 기존 리스트는 변하지 않고, 새 리스트가 생성됨
코드 예시
extend() 사용 예시
myFavoriteNumbers = [1, 3, 5, 6, 7]
friendFavoriteNumbers = [2, 3, 5, 8, 10]
myFavoriteNumbers.extend(friendFavoriteNumbers)
print(myFavoriteNumbers)
# [1, 3, 5, 6, 7, 2, 3, 5, 8, 10]
+ 연산자 사용 예시
myFavoriteNumbers = [1, 3, 5, 6, 7]
friendFavoriteNumbers = [2, 3, 5, 8, 10]
addList = myFavoriteNumbers + friendFavoriteNumbers
print(addList)
# [1, 3, 5, 6, 7, 2, 3, 5, 8, 10]
두 리스트를 합치되 중복 제거하기
myFavoriteNumbers = [1, 3, 5, 6, 7]
friendFavoriteNumbers = [2, 3, 5, 8, 10]
addList = myFavoriteNumbers + friendFavoriteNumbers
result = []
for number in addList:
if number not in result:
result.append(number)
print(result)
# [1, 3, 5, 6, 7, 2, 8, 10]
* 이 글은 제로베이스 데이터사이언스 파트타임 스쿨의 강의 자료 일부를 발췌하여 작성되었습니다.
💡 생각 정리
리스트 연결은 단순히 리스트를 합치는 것을 넘어서, 데이터를 어떻게 다룰지 설계하는 과정과 연결된다.
extend()는 원본 리스트를 직접 수정하므로 의도하지 않은 변경을 발생시킬 수 있고, +는 새 리스트를 만들기 때문에 메모리 사용량이 늘어날 수 있다.
또한 두 리스트를 합친 후 중복 제거 로직을 구현해보면, 파이썬의 리스트 순회, 조건문, 데이터 정제 과정을 자연스럽게 이해할 수 있다. 결국 자료구조를 다루고 목적에 맞게 데이터를 변형하는 능력이 중요한 포인트다.
🚀 적용점
- 서로 다른 데이터 소스를 합쳐 하나의 리스트로 정리할 때 활용
- 웹 크롤링 결과를 수집한 뒤 리스트 확장할 때 유용
- 중복 제거 로직은 이후 집합(set), 리스트 컴프리헨션 활용 등 파이썬 최적화 학습으로 확장 가능
- 프로젝트에서 유저 취향 목록, 상품 태그 리스트, 분류 데이터 병합 등에도 바로 적용 가능
반응형
'데이터' 카테고리의 다른 글
| 제로베이스 데이터사이언스 스쿨 - Part 05. 자료구조&알고리즘 with Python -09 (0) | 2025.12.06 |
|---|---|
| 제로베이스 데이터사이언스 스쿨 - Part 05. 자료구조&알고리즘 with Python -08 (0) | 2025.12.05 |
| 제로베이스 데이터사이언스 스쿨 - Part 05. 자료구조&알고리즘 with Python -06 (0) | 2025.12.02 |
| 제로베이스 데이터사이언스 스쿨 - Part 05. 자료구조&알고리즘 with Python -05 (0) | 2025.12.01 |
| 제로베이스 데이터사이언스 스쿨 - Part 05. 자료구조&알고리즘 with Python -04 (0) | 2025.11.30 |