반응형
파이썬 리스트 객체, 원소 추가하기 : append와 extend 의 기능과 차이점
append와 extend는 둘 다 파이썬의 리스트에 항목을 추가하는 방법이지만, 그 작동 방식에는 중요한 차이점이 있습니다.
결론적으로, append()는 리스트에 항목을 하나의 단위로 추가하고, extend()는 리스트에 다른 iterable의 요소를 개별적으로 추가합니다.
1. append()
- 기능: 리스트의 끝에 단일 객체를 추가합니다.
- 용도: 하나의 요소(숫자, 문자열, 리스트 등)를 리스트에 추가할 때 사용합니다.
- 특징: 추가된 객체는 리스트에 그 자체로 하나의 항목으로 들어갑니다.
lst = [1, 2, 3]
lst.append([4, 5])
print(lst)
결과를 보면 여기서 append는 리스트 [4, 5]를 하나의 객체로서 리스트에 추가했기 때문에, 리스트 내부에 또 하나의 리스트가 생긴 것입니다.
[1, 2, 3, [4, 5]]
2. extend()
- 기능: 리스트의 끝에 다른 iterable(반복 가능한 객체: 리스트, 튜플, 문자열 등)의 모든 요소를 추가합니다.
- 용도: 리스트에 여러 요소를 한꺼번에 추가할 때 사용합니다.
- 특징: iterable 객체의 각 항목을 개별적으로 리스트에 추가합니다.
lst = [1, 2, 3]
lst.extend([4, 5])
print(lst)
여기서 코드 실행결과를 보면 extend는 [4, 5] 리스트의 각 요소인 4, 5를 각각 리스트의 항목으로 추가한 것입니다.
[1, 2, 3, 4, 5]
반응형
차이점 요약:
- **append()**는 리스트에 단일 객체를 추가하며, 이 객체는 리스트일 수도 있고, 튜플일 수도 있습니다. 객체 자체가 리스트의 마지막 항목으로 들어갑니다.
- **extend()**는 리스트에 다른 iterable 객체의 각 요소를 추가합니다. iterable 객체의 각 요소가 리스트의 끝에 추가됩니다.
lst = [1, 2, 3]
# append 사용
lst.append([4, 5])
print(lst) # [1, 2, 3, [4, 5]]
# extend 사용
lst = [1, 2, 3]
lst.extend([4, 5])
print(lst) # [1, 2, 3, 4, 5]
반응형
'코딩취미 > Python' 카테고리의 다른 글
exec()에서 사용자 입력(악성코드) 동작 방지방 (0) | 2024.09.09 |
---|---|
eval() 에서 악의적인 코드 실행 방지하기 : 보안 위험 방지 (0) | 2024.09.05 |
문자열을 파이썬 코드로 해석해서 실행하는 함수 : eval(), exec() 비교 (0) | 2024.09.04 |
파이썬 그래프 패키지 설치 방법과 특징 (Matplotlib, Seaborn, Plotly ) (0) | 2024.09.03 |
setStyleSheet 에서 사용할 수 있는 스타일 항목과 특징 (0) | 2024.08.31 |