Python - 문제 미리보기
문제 1850
medium
다음 코드의 실행 결과는?
```python
x = "awesome"
def myfunc():
x = "fantastic"
print("Python is " + x)
myfunc()
print("Python is " + x)
```
```python
x = "awesome"
def myfunc():
x = "fantastic"
print("Python is " + x)
myfunc()
print("Python is " + x)
```
정답: C
⦁ 지역 변수와 전역 변수의 독립성:
```python
x = "awesome" # 전역 변수
def myfunc():
x = "fantastic" # 지역 변수 (전역 변수와 별개)
print("Python is " + x) # 지역 변수 사용
myfunc() # "Python is fantastic" 출력
print("Python is " + x) # 전역 변수 사용 → "Python is awesome"
```
⦁ 실행 과정 상세 분석:
1단계: 전역 변수 생성
```python
x = "awesome" # 전역 스코프에 x 생성
```
2단계: 함수 호출 및 지역 변수 생성
```python
def myfunc():
x = "fantastic" # 지역 스코프에 새로운 x 생성
print("Python is " + x) # 지역 x 사용 → "fantastic"
```
3단계: 함수 종료 후 전역 변수 사용
```python
print("Python is " + x) # 전역 x 사용 → "awesome"
```
⦁ 변수 스코프 시각화:
```txt
전역 스코프: x = "awesome"
↑
함수 호출 시점
↓
지역 스코프: x = "fantastic" (전역 x와 별개)
↑
함수 종료 후
↓
전역 스코프: x = "awesome" (변경되지 않음)
```
💡 학습 팁
이 문제를 포함한 Python 과목의 모든 문제를 순차적으로 풀어보세요. 진행상황이 자동으로 저장되어 언제든지 이어서 학습할 수 있습니다.