728x90
def solution(arr):
min_num = min(arr)
arr.remove(min_num)
if len(arr) < 2:
return [-1]
return arr
def solution(n):
result = [int(i) for i in reversed(str(n))]
return result
def solution(num1, num2):
answer = num1 - num2
return answer
문제4: 이메일 유효성 검사
- 출제의도
- 문자형 자료형의 메소드를 사용할 수 있다.
- 조건문,반복문, 함수형을 완벽하게 이해하여 기능을 구현할 수 있다.
- 배경
당신은 고객 데이터를 수집하고 정리하는 과정에 있습니다. 확인해보니 회원가입 시 이메일 유효성 검사가 기능으로 구현되어있지 않음을 확인했습니다. 이를 보완하기 위하여 이메일 유효성 검사 기능을 만들려고 합니다.
- 요구사항
- 이메일은 ID와 골뱅이, 도메인 3가지 요소로 구성 되어있습니다.
- 이메일은 하나의 @ 기호를 포함해야하며, @ 기준으로 ID와 도메인으로 나눠집니다.
- ID는 어떠한 문자든 숫자든 허용됩니다. 최소한 1자리가 존재 해야합니다.
- 도메인 역시 어떠한 문자나 숫자를 허용합니다. 단, 접미사는 .com , .co.kr 만 허용합니다.(문제풀이 편의성)
- 이메일 주소 리스트 email_list 를 입력받아 각 이메일의 유효성을 검사하는 함수 check_email 함수를 완성합니다.
- 유효한 이메일인 경우 “유효한 이메일입니다” 라고 출력합니다.
- 유효하지 않은 이메일인 경우 “유효하지 않은 이메일입니다.” 라고 출력하며 그 이유를 함께 출력합니다.
- ex) “ID가 누락”, “@ 가 누락”, “적절하지 않은 도메인”
email_list = [
"example@example.com", # 유효한 이메일
"yangbujang@email.co.kr", # 유효한 이메일
"iamhungry.com", # 틀린 이메일 -> @ 누락
"@da.com", # 틀린 이메일 -> ID 누락
"daislove@isnit", # 틀린 이메일 -> 도메인 잘못됨
"user@domain.net", # 틀린 이메일 -> 허용되지 않는 접미사
]
def check_email(email_list):
for email in email_list:
if email.count('@') != 1:
print(f"유효하지 않은 이메일입니다: '{email}' 이유: '@가 누락' 또는 'ID가 누락'")
continue
username, domain = email.split('@')
if not username:
print(f"유효하지 않은 이메일입니다: '{email}' 이유: 'ID가 누락'")
continue
if '.' not in domain:
print(f"유효하지 않은 이메일입니다: '{email}' 이유: '적절하지 않은 도메인'")
continue
if not (domain.endswith('.com') or domain.endswith('.co.kr')):
print(f"유효하지 않은 이메일입니다: '{email}' 이유: '허용되지 않는 접미사'")
continue
print(f"유효한 이메일입니다: '{email}'")
check_email(email_list)
''' 출력 결과
유효한 이메일입니다: 'example@example.com'
유효한 이메일입니다: 'yangbujang@email.co.kr'
유효하지 않은 이메일입니다: 'iamhungry.com' 이유: '@가 누락'
유효하지 않은 이메일입니다: '@da.com' 이유: 'ID가 누락'
유효하지 않은 이메일입니다: 'daislove@isnit' 이유: '적절하지 않은 도메인'
'''
728x90
'내일배움캠프 > TIL' 카테고리의 다른 글
[TIL]241217_알고리즘 코드카타 / Pandas 시작! (0) | 2024.12.19 |
---|---|
[TIL]241217_SQL, Python, Pandas의 역할 / SQL코드카타 / SQL퀴즈 오답노트 (2) | 2024.12.17 |
[TIL]241212_SQL코드카타, Python 개인과제 문제1~3 (2) | 2024.12.12 |
[TIL]241211_코트카타Lv.4 (복습 필요), 파이썬 3주차 복습 (1) | 2024.12.11 |
[TIL]241210_코드카타, 데이터 리터러시 강의 1 (1) | 2024.12.10 |