🔍 문제
사용자 암호를 입력하고, 상황에 따라 예외 처리하는 예외 클래스를 만들기.
5회 이상 입력 시, 프로그램 종료
- 길이가 5 미만 :
- 길이가 10 초과 :
- 암호가 잘못된 경우 :
🗝 사용함수
while 반복문 : 반복 횟수 제한
raise Exception() : 일부러 예외를 발생시킴
🖥 실행
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
|
class PasswordLengthShortException(Exception):
def __init__(self, str):
super().__init__(f'{str}: 길이 5미만!')
class PasswordLengthLongException(Exception):
def __init__(self, str):
super().__init__(f'{str}: 길이 10 초과!')
class PasswordWrongException(Exception):
def __init__(self, str):
super().__init__(f'{str}: 잘못된 비밀번호')
n = 1
while n < 7:
if n == 6:
print('입력 횟수 초과')
break
try:
pw = input(f'{n}번째 비밀번호 입력:')
if len(pw) < 5:
n += 1
raise PasswordLengthShortException(pw)
elif len(pw) > 10:
n += 1
raise PasswordLengthLongException(pw)
elif pw != '12345':
n += 1
raise PasswordWrongException(pw)
else:
print('빙고')
break except PasswordLengthShortException as e1:
print(e1)
except PasswordLengthLongException as e2:
print(e2)
except PasswordWrongException as e3:
print(e3)
|
|
|
|
📝 결과물
'Coding test > Python 기초문제' 카테고리의 다른 글
[함수] 속도, 시간 계산기 (0) | 2022.04.28 |
---|---|
[함수] 계산기 만들기 (0) | 2022.04.28 |
[예외 처리] 문자 발송 시스템 (0) | 2022.04.28 |
[예외 처리] 짝수, 홀수, 실수 분류 (0) | 2022.04.28 |
[오버라이딩] 삼각형 넓이 단위 변환 (0) | 2022.04.28 |