TIL (Today I Learn)

TIL [내배캠] 16일차

dataguard 2025. 3. 11. 21:21
파이썬 개인과제 5번

 

  • 문제 5 : 이메일 주소가 올바른 형식을 갖추고 있는지 판단하는 프로그램 구현
  • 문자열 형태의 이메일 주소 목록을 분석하여,
    각 이메일 주소가 올바른 형식을 갖추고 있는지 판단하는 프로그램을 작성하세요.
  • 조건
    • 하나의 '@' 기호를 포함해야 합니다.
    • '@' 기호 앞에는 하나 이상의 문자가 있어야 합니다.
    • '@' 기호 뒤에는 도메인명이 와야 하며,
      도메인명은 '.'을 포함한 하나 이상의 문자로 구성되어야 합니다.
  • 조건에 해당하는 정답 리스트를 만들고, 그것에 따라서 원본 이메일과 함께 출력하는 식으로 구상
    • split을 @ 기준으로 해야하기 때문에, @의 포함 유무를 1순위 조건으로 설정
    • 도메인에 '.'의 포함 유무에서 많이 걸러질 것 같아서 2순위 조건으로 설정
    • @ 기호 앞으로 split 된 리스트의 길이로 조건을 설정
    • 모든 조건을 통과한 요소들을 correct 리스트에 추가
    • 예시 답변이 리스트의 형태가 아니어서, 조인으로 줄을 나누고 프린트로 출력
def validate_emails(email_list):
    correct = []
    final = []
    for email in email_list:
        if '@' in email:
            spt = email.split('@')
            if '.' in spt[1]:
                if len(spt[0]) > 0:
                    correct.append(email)
        if email in correct:
            answer = f'{email} 유효한 이메일 주소입니다'
        else:
            answer = f'{email} 유효하지 않은 이메일 주소입니다.'
        final.append(answer)
    return print("\n".join(final))



# 이메일 목록
email_list = [
    "example@example.com",
    "wrongemail@com",
    "anotherexample.com",
    "correct@email.co.uk",
    "rudgh811@naver.com",
    "@asoidfj.com"
]

# 이메일 유효성 검사 실행
validate_emails(email_list)

 

 

 

 

 

  • 민방위 훈련으로 인해, 오늘의 TIL은 상당히 짧다.
  • 내일은 더 열심히 해보자