같은 작업을 여러 번 시키는 방법이 필요했다

오늘은 반복문과 리스트를 정리했다. 앞에서 변수 하나, 값 하나를 다뤘다면 이제는 여러 개의 값을 묶어두고 같은 작업을 반복해서 처리하는 감각을 익히는 단계였다.

처음에는 코드가 길어지는 걸 막는 문법 정도로 생각했는데, 실습을 다시 해보니 반복문은 생산성을 높이는 도구이기도 하지만 “생각을 구조화하는 방식”에 더 가까웠다.

리스트는 여러 값을 한 번에 다루게 해줬다

리스트는 여러 값을 순서대로 저장할 수 있는 자료형이다.

fruits = ["apple", "banana", "orange"]
print(fruits)
print(fruits[0])
print(fruits[1])

인덱스는 0부터 시작한다는 점을 다시 확인했다. 처음 공부할 때는 이 부분이 은근 자주 틀렸다. 사람이 보기에는 첫 번째가 1이지만, Python은 첫 번째를 0으로 본다.

리스트가 중요한 이유는 나중에 데이터를 한 번에 처리할 수 있게 해주기 때문이다. 하나씩 따로 변수를 만드는 방식은 금방 한계가 온다.

for 문은 가장 자주 쓰게 될 것 같다

오늘은 for 문이 특히 직관적으로 느껴졌다.

fruits = ["apple", "banana", "orange"]

for fruit in fruits:
    print(fruit)

리스트 안에 들어 있는 값을 하나씩 꺼내서 반복 처리한다는 구조가 이해하기 쉬웠다. 이 방식은 문자열 리스트뿐 아니라 숫자 리스트를 다룰 때도 똑같이 쓸 수 있다.

numbers = [1, 2, 3, 4, 5]

for n in numbers:
    print(n * 2)

반복문이 없었다면 같은 줄을 다섯 번 써야 했을 텐데, 이제는 규칙만 적으면 된다. 코드가 짧아지는 것도 좋지만, “무엇을 반복하는지”가 더 명확하게 드러난다는 점이 좋았다.

while 문은 조건이 중심이었다

while 문은 for 문과 결이 조금 달랐다. 리스트를 순회한다기보다, 어떤 조건이 참인 동안 계속 실행한다는 점이 핵심이었다.

i = 0

while i < 3:
    print(i)
    i += 1

이 예제를 보면 반복 횟수를 직접 관리해야 한다. 그래서 자유도는 있지만, 잘못 쓰면 무한 반복에 빠질 수 있다는 점도 함께 배웠다.

오늘 실습에서 느낀 핵심

반복문은 그냥 문법이 아니라, “비슷한 일을 여러 번 해야 할 때 어떻게 생각할 것인가”를 바꿔주는 도구였다. 나중에 파일 여러 개를 처리하거나, 데이터 여러 행을 검사하거나, 문제 풀이에서 패턴을 찾을 때도 이 감각이 중요할 것 같다.

리스트와 반복문은 항상 같이 묶여서 등장할 가능성이 높다. 그래서 오늘은 두 개를 따로 외우기보다, 같이 움직이는 도구로 기억하려고 한다.

오늘 헷갈렸던 점

가장 많이 헷갈린 건 리스트 인덱스와 반복 변수 이름이었다. fruits[0]이 첫 번째 값이라는 점은 알겠는데, 반복문 안에서 fruit처럼 단수 형태 변수로 꺼내 쓰는 방식이 초반에는 조금 낯설었다.

while 문에서는 반복이 끝날 조건을 내가 직접 만들어줘야 해서, i += 1 같은 코드가 빠지면 위험하다는 점도 다시 느꼈다.

오늘의 실수 포인트

  • 리스트 인덱스는 0부터 시작한다.
  • for 문은 묶음 데이터를 순서대로 처리할 때 편하다.
  • while 문은 종료 조건을 내가 직접 관리해야 한다.

복습용으로 남기는 질문

1. 리스트에서 첫 번째 값을 가져오는 인덱스는 무엇인가?

첫 번째 값의 인덱스는 0이다. Python 리스트는 0부터 시작한다.

2. for 문과 while 문의 차이는 무엇인가?

for 문은 리스트처럼 정해진 묶음 데이터를 순서대로 꺼내 처리할 때 주로 쓰고, while 문은 조건이 참인 동안 반복할 때 쓴다. while은 반복 종료 조건을 직접 관리해야 한다.

3. while 문에서 무한 반복이 생기는 이유는 무엇인가?

반복을 끝낼 조건이 바뀌지 않으면 계속 참으로 남기 때문이다. 예를 들어 i += 1 같은 값 변화가 빠지면 조건이 계속 유지되어 반복이 멈추지 않을 수 있다.

한 줄 정리

오늘은 여러 값을 묶어서 저장하고, 같은 규칙을 반복 적용하는 Python의 기본 처리 방식을 익히는 날이었다.

Community

Comments

0 comments

Comments appear immediately. Use report if something needs review.

No comments yet.