
이미지 출처: Pexels · Pexels License (https://www.pexels.com/photo/8580716/)
열 편을 지나왔습니다. 새 문법은 이번 편에 없습니다. 대신 지나온 것을 문제로 다시 만납니다.
읽어서 아는 것과 손으로 되는 것은 다릅니다. 저도 range(5)가 5를 포함하지 않는다는 문장을 여러 번 읽고도, 실제로 숫자가 4에서 끊기는 걸 보고 나서야 몸에 붙었습니다. 그래서 이 편은 두 단계입니다. 먼저 개념을 퀴즈로 훑고, 그다음 실제로 고쳐서 실행하는 문제를 풉니다.
열 편에서 무엇을 지나왔을까요
| 편 | 핵심 | 대표 함정 |
|---|---|---|
| 1 | 파이썬이 어떤 언어인가 | 이름은 뱀이 아니라 코미디 프로에서 |
| 2 | print·주석·따옴표 | Print는 안 됩니다 — 대소문자를 가립니다 |
| 3 | 변수와 자료형·type() | =는 "같다"가 아니라 "넣는다" |
| 4 | input()과 형변환 | 받은 값은 무조건 문자열 |
| 5 | 연산자 /·//·% | 10 / 3은 3이 아니라 3.33… |
| 6 | if·elif·else | 들여쓰기 한 칸이 곧 문법 |
| 7 | 리스트·인덱스·슬라이싱 | 번호는 0부터, 슬라이싱 끝은 빠집니다 |
| 8 | for와 range | range(5)는 0~4 |
| 9 | while·break·continue | 조건을 갱신하지 않으면 안 멈춥니다 |
| 10 | 함수 def·return | return 없으면 None |

네 덩어리로 묶어 두면 다시 찾기가 쉽습니다. 한 묶음이 흔들리면 그 묶음만 다시 보면 됩니다.
열 편을 하나씩 기억하려 들면 오히려 안 남습니다. 위처럼 말 걸기 → 값 다루기 → 길 고르기 → 묶어 두기 네 덩어리로 잡아 두면, 막힐 때 어디로 돌아갈지가 바로 나옵니다.
여기서 여섯 번 넘어집니다
시즌 내내 되풀이해 나온 함정이 여섯 개입니다. 하나로 모아 두었습니다.

왼쪽이 실제로 쓰는 코드, 오른쪽이 기대와 실제 결과입니다.
이 여섯 줄만 몸에 붙으면 PYTHON1은 충분합니다.
입력은 문자열 · 콜론 뒤엔 들여쓰기 · 번호는 0부터 ·
range는 끝 제외 ·while은 갱신 ·return없으면None
1단계 — 개념 빠른 점검
먼저 개념부터 OX·4지선다 열두 문제로 확인합니다. 해설에 몇 편 내용인지 적어 두었으니, 틀린 문제의 편으로 돌아가시면 됩니다.
미니 퀴즈
2단계 — 직접 풀어 보기
이제 손으로 풉니다. 각 문제의 실행창에서 코드를 고친 뒤 Run 을 누르면 결과가 나옵니다. 화면이 좁으면 크게 보기로 넓혀서 푸시면 됩니다. 정답은 문제 아래 정답 보기를 눌러야 펼쳐집니다.
문제 1. 출력을 먼저 예측하기
아래 세 줄이 무엇을 찍을지 종이에 적어 본 뒤 실행해 맞혀 보세요.
print(7 + 3)
print("7" + "3")
print(7 / 2)📱 코드 실행(실습)은 태블릿·PC에서 이용할 수 있어요. 모바일에서는 위 코드를 눈으로 따라가며 확인하세요.
정답 보기
10, 73, 3.5 입니다.
숫자끼리 +는 더하기, 문자열끼리 +는 이어 붙이기입니다. 그리고 /는 나머지를 버리지 않으므로 7 / 2는 3이 아니라 3.5입니다. 몫만 필요하면 //를 씁니다.
문제 2. 1부터 5까지 나오게 고치기
지금은 0부터 4까지 나옵니다. range 한 곳만 고쳐 1 2 3 4 5가 나오게 해 보세요.
for i in range(5):
print(i)📱 코드 실행(실습)은 태블릿·PC에서 이용할 수 있어요. 모바일에서는 위 코드를 눈으로 따라가며 확인하세요.
정답 보기
for i in range(1, 6): 로 고칩니다.
시작을 1로 주고, 끝은 빠지므로 5까지 받으려면 6을 적습니다. range(1, 5)로 적으면 4에서 끊깁니다.
문제 3. 들여쓰기 한 줄 고치기
실행하면 IndentationError가 납니다. 한 줄만 고쳐 보세요.
score = 85
if score >= 60:
print("합격")📱 코드 실행(실습)은 태블릿·PC에서 이용할 수 있어요. 모바일에서는 위 코드를 눈으로 따라가며 확인하세요.
정답 보기
print("합격") 앞에 공백 네 칸을 넣습니다.
콜론(:)으로 끝난 줄 다음은 반드시 들여씁니다. 들여쓴 부분까지가 if에 딸린 몸입니다.
문제 4. 마지막 값만 꺼내기
nums[3]은 IndexError가 납니다. 마지막 값 40이 나오게 고쳐 보세요.
nums = [10, 20, 30, 40]
print(nums[4])📱 코드 실행(실습)은 태블릿·PC에서 이용할 수 있어요. 모바일에서는 위 코드를 눈으로 따라가며 확인하세요.
정답 보기
print(nums[3]) 또는 print(nums[-1]) 입니다.
값이 네 개면 번호는 0, 1, 2, 3입니다. 개수와 마지막 번호가 하나 차이 난다는 것이 인덱스의 핵심입니다. 개수를 모를 때는 -1이 안전합니다.
문제 5. 멈추게 만들기
이대로 실행하면 0이 끝없이 찍힙니다. 한 줄을 더해 0 1 2에서 멈추게 해 보세요.
n = 0
while n < 3:
print(n)📱 코드 실행(실습)은 태블릿·PC에서 이용할 수 있어요. 모바일에서는 위 코드를 눈으로 따라가며 확인하세요.
정답 보기
print(n) 아래에 n += 1 을 넣습니다.
while은 조건이 거짓이 될 때 멈춥니다. 조건에 쓰인 값을 몸 안에서 바꿔 주지 않으면 조건이 영원히 참이라 멈출 수가 없습니다.
문제 6. None이 나오지 않게 고치기
total에 None이 담깁니다. 함수 쪽을 고쳐 7이 나오게 해 보세요.
def add(a, b):
print(a + b)
total = add(3, 4)
print("합계는", total)📱 코드 실행(실습)은 태블릿·PC에서 이용할 수 있어요. 모바일에서는 위 코드를 눈으로 따라가며 확인하세요.
정답 보기
함수 안의 print(a + b) 를 return a + b 로 바꿉니다.
print는 화면에 보여 줄 뿐이고, 값을 호출한 자리로 돌려보내는 것은 return입니다. 돌려줄 것이 없는 함수는 None을 돌려줍니다.
여섯 줄만 남기고 다음 시즌으로
여섯 문제 중 몇 개를 한 번에 푸셨는지 세어 보시면 됩니다. 넷 이상이면 PYTHON1은 통과입니다. 두 개 이하라면 아래 표에서 틀린 쪽 편으로 돌아가시는 편이 빠릅니다.
| 틀린 문제 | 돌아갈 편 |
|---|---|
| 1번 | 3편 변수·자료형, 5편 연산자 |
| 2번 | 8편 for와 range |
| 3번 | 6편 if 조건문 |
| 4번 | 7편 리스트 |
| 5번 | 9편 while |
| 6번 | 10편 함수 |
기억할 것은 결국 여섯 줄입니다. 입력은 문자열, 콜론 뒤엔 들여쓰기, 번호는 0부터, range는 끝 제외, while은 갱신, return 없으면 None. 나머지는 필요할 때 찾아 쓰면 됩니다.
다음 시즌 PYTHON2는 실용 기초입니다. 문자열을 자르고 붙이는 메서드, 이름으로 값을 찾는 딕셔너리, 오류가 나도 프로그램이 죽지 않게 하는 try-except를 다룹니다. 리스트에서 한 걸음 더 나가는 자리입니다.
예제 코드는 강사 개인 GitHub 저장소의 실습 코드를 왕초보 눈높이로 다듬어 쓰고 있습니다.
참고 자료
- 파이썬 공식 자습서 — https://docs.python.org/ko/3/tutorial/
- 파이썬 공식 문서 내장 함수 — https://docs.python.org/ko/3/library/functions.html