Python - 문제 미리보기
문제 1936
medium
다음 코드의 실행 결과는?
```python
numbers = [1, [2, 3], 4]
shallow_copy = numbers.copy()
numbers[1].append(5)
print(shallow_copy)
```
```python
numbers = [1, [2, 3], 4]
shallow_copy = numbers.copy()
numbers[1].append(5)
print(shallow_copy)
```
정답: B
⦁ **얕은 복사(Shallow Copy)**의 한계점을 보여주는 예제
⦁ 리스트 내부의 중첩된 객체는 여전히 참조를 공유
⦁ 중첩 리스트를 수정하면 복사본에도 영향
실행 과정:
1. `shallow_copy = numbers.copy()`: 얕은 복사 생성
2. 외부 리스트는 분리되지만 내부 리스트 `[2, 3]`는 공유
3. `numbers[1].append(5)`: 공유된 내부 리스트에 5 추가
4. `shallow_copy`에서도 내부 리스트 변경 반영
💡 학습 팁
이 문제를 포함한 Python 과목의 모든 문제를 순차적으로 풀어보세요. 진행상황이 자동으로 저장되어 언제든지 이어서 학습할 수 있습니다.