못 푼 문제 해결
문제 3-5) 예외 처리 적용하기
- 문제 설명: 형식이 잘못된 입력이 들어오면 "형식이 잘못되었습니다"라고 출력하세요.
- 관련 이론: try-except 구문은 오류 발생 시 프로그램 종료 대신 개발자가 지정한 메시지를 보여줍니다.
답안)
### 문제 3-5) 예외 처리 적용하기
try:
a, b = map(int, input().split())
print(a + b)
except:
print("형식이 잘못되었습니다")
| 상황 | 실행 순서 | 결과정상 |
| 입력 (1 2) | try 실행 -> 합계 출력 | 3 |
| 잘못된 입력 (abc) | try 도중 에러 -> except로 이동 | 형식이 잘못되었습니다 |
문제 4-6) ValueError 처리 (합계)
- 문제 설명: 숫자가 아닌 값이 포함되면 "정수만 입력하세요"라고 출력하세요.
답안)
try:
nums = map(int, input().split())
print(sum(nums))
except ValueError:
print("정수만 입력하세요")
| 입력 예시 | sum(nums) 결과 | 비고 |
| 10 20 | 30 | 두 수의 합 계산 |
| 5 5 5 5 | 20 | 여러 개의 숫자도 처리 가능 (장점!) |
| 10 hello | (에러 발생) | ValueError 발생 $\rightarrow$ "정수만 입력하세요" 출력 |
| (공백만 입력) | 0 | 빈 리스트의 합은 0이므로 에러 없이 0 출력 |
문제 4-7) 입력 개수 검증
- 문제 설명: 반드시 정수 2개만 입력받아야 하며, 개수가 다르면 경고 문구를 출력하세요.
답안)
data = input().split()
if len(data) == 2:
print(int(data[0]) + int(data[1]))
else:
print("정수 2개를 입력하세요")
문제 1-8) 예약어 사용 불가
- 문제 설명: for = 10 코드를 실행하면 에러가 나는 이유를 설명하세요.
답안)
for는 파이썬에서 반복문을 위해 미리 정해놓은 '예약어(Keyword)'이다.
예약어는 변수명으로 쓸 수 없지만, for_list 처럼 다른 글자와 조합하면 사용 가능하다.
문제 2) 문자열 분리 후 다시 합치기
- 문제 설명: "A,B,C"를 쉼표로 나누고 하이픈()으로 연결하세요.
- 관련 이론: split()은 리스트를 만들고, join()은 리스트의 요소를 하나의 문자열로 합칩니다.
답안)
text = "A,B,C"
split_text = text.split(",")
result = "-".join(split_text)
print(result)
split(): 리스트를 만든다.
join(): 리스트의 요소를 하나의 문자열로 합친다.
- 리스트(또는 튜플) 안에 있는 문자열들을 하나로 합쳐서 새로운 문자열을 만들 때 사용하는 메서드
- 문자열(str) 리스트에서만 작동
- 합쳐질 전체 길이를 미리 계산한 뒤 한 번에 만들기 때문에 대량의 데이터를 처리할 때 압도적으로 효율적
"구분자".join(리스트)
- 구분자: 문자열 사이에 끼워 넣을 글자 (공백, 콤마, 대시 등)
- 리스트: 합칠 문자열들이 들어있는 리스트
필수과제 8번
사용자로부터 정수 n을 입력받아, n부터 1까지 역순으로 출력하는 프로그램을 작성하세요.
답안)
n = int(input())
for i in range(n, 0, -1):
print(i)
range()의 세 번째 인자를 사용해 감소하도록 설정
- n (Start): 시작값. 사용자가 5를 입력했다면 5부터 시작.
- 0 (Stop): 종료값. 파이썬의 range는 종료값 직전까지만 반복하므로, 0은 포함되지 않고 1에서 멈춘다.
- -1 (Step): 증감폭. 숫자를 하나씩 줄여가며(-1) 진행하라는 뜻.
오늘의 회고
오늘은 내일의 시험 대비 못풀었던 문제들을 다시 풀어보는 시간들을 가졌다. 이는 분명 도움되는 시간이었을 것이다. 시각화 세션에서 한 머신러닝은 너무도 신기했고 어려웠다. 조원들이 에러가 나서 해결해주고 싶었는데 크게 도움이 되지 못한거 같아 죄송했다. 좀 더 많은 공부량의 필요성을 느꼈다. 설명하지 못하는 지식은 내 것이 아니다..
'내일배움캠프' 카테고리의 다른 글
| [내일배움캠프] TIL 24일차 26.02.03(화) (0) | 2026.02.03 |
|---|---|
| [내일배움캠프] TIL 23일차 26.01.23(금) (0) | 2026.01.23 |
| [내일배움캠프] TIL 21일차 26.01.21(수) (0) | 2026.01.21 |
| [내일배움캠프] TIL 20일차 26.01.20(화) (0) | 2026.01.20 |
| [내일배움캠프] TIL 19일차 26.01.19(월) (0) | 2026.01.19 |