Python - 문제 미리보기
문제 1935
medium
다음 세 가지 복사 방법의 결과를 비교했을 때 올바른 것은?
```python
original = [1, 2, 3]
# 방법 A
copy_a = original.copy()
# 방법 B
copy_b = list(original)
# 방법 C
copy_c = original[:]
original.append(4)
```
```python
original = [1, 2, 3]
# 방법 A
copy_a = original.copy()
# 방법 B
copy_b = list(original)
# 방법 C
copy_c = original[:]
original.append(4)
```
정답: B
세 방법 모두 얕은 복사를 수행하여 동일한 결과를 만듦:
방법 A: `copy()` 메소드
⦁ 리스트 내장 메소드 사용
⦁ 가장 직관적이고 명확한 방법
방법 B: `list()` 생성자
⦁ 기존 이터러블을 새로운 리스트로 변환
⦁ 다양한 이터러블 타입에 사용 가능
방법 C: 슬라이스 `[:]`
⦁ 전체 범위 슬라이싱
⦁ 간결하지만 의도가 불분명할 수 있음
모든 방법의 공통점:
⦁ 새로운 리스트 객체 생성
⦁ 원본과 독립적으로 동작
⦁ 원본 수정이 복사본에 영향 안 줌
결과 (모두 동일):
⦁ `original`: `[1, 2, 3, 4]`
⦁ `copy_a`, `copy_b`, `copy_c`: `[1, 2, 3]`
💡 학습 팁
이 문제를 포함한 Python 과목의 모든 문제를 순차적으로 풀어보세요. 진행상황이 자동으로 저장되어 언제든지 이어서 학습할 수 있습니다.