Python - 문제 미리보기

문제 2059

medium
다음 코드의 실행 결과는?
```python
my_string = "hello"

for char in my_string:
print(char)
```
A. hello
B. h, e, l, l, o (각각 한 줄씩)
C. ['h', 'e', 'l', 'l', 'o']
D. 오류 발생

정답: B



문자열의 이터러블 특성:

문자열 = 이터러블 객체:
⦁ 문자 시퀀스: 문자열은 문자들의 순서있는 집합
⦁ 순회 가능: 각 문자를 하나씩 접근할 수 있음
⦁ for문 지원: for문으로 직접 순회 가능

for문의 내부 동작:
```python
# 겉으로 보이는 코드
for char in "hello":
print(char)

# 내부적으로 일어나는 과정
string_iterator = iter("hello") # 이터레이터 생성
while True:
try:
char = next(string_iterator) # 다음 문자 가져오기
print(char) # 문자 출력
except StopIteration:
break # 끝에 도달하면 종료
```
단계별 실행 과정:
1. 첫 번째 반복: `char = 'h'` → `print('h')` → h 출력
2. 두 번째 반복: `char = 'e'` → `print('e')` → e 출력
3. 세 번째 반복: `char = 'l'` → `print('l')` → l 출력
4. 네 번째 반복: `char = 'l'` → `print('l')` → l 출력
5. 다섯 번째 반복: `char = 'o'` → `print('o')` → o 출력
6. 종료: 더 이상 문자가 없으므로 반복 종료

최종 출력:
```txt
h
e
l
l
o
```

💡 학습 팁

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