Python - 문제 미리보기

문제 1933

easy
다음 코드의 실행 결과는?
```python
list1 = [1, 2, 3]
list2 = list1
list1.append(4)
print(list2)
```
A. `[1, 2, 3]`
B. `[1, 2, 3, 4]`
C. `[4]`
D. 오류 발생

정답: B



⦁ `list2 = list1`: 단순 할당은 복사가 아닌 참조(reference)
⦁ 두 변수가 같은 리스트 객체를 가리킴
⦁ `list1`을 수정하면 `list2`도 함께 변경됨

메모리 구조:
```txt
list1 ──┐
├─── [1, 2, 3, 4] (하나의 리스트 객체)
list2 ──┘
```
실행 과정:
1. `list1 = [1, 2, 3]`: 리스트 생성
2. `list2 = list1`: 같은 객체를 참조
3. `list1.append(4)`: 리스트에 4 추가
4. `list2`도 같은 리스트를 보므로 `[1, 2, 3, 4]` 출력

💡 학습 팁

이 문제를 포함한 Python 과목의 모든 문제를 순차적으로 풀어보세요. 진행상황이 자동으로 저장되어 언제든지 이어서 학습할 수 있습니다.