[Python]비밀번호(문자열) 검증하기
사용자가 입력한 문자열의 유효성을 검사하는 예제를 알아보자.
import re # 방법1 while True: pw = input("비밀번호를 입력하세요. : ") if re.match('.*[0-9]+.*', pw) and re.match('.*[A-Z]+.*', pw) and len(pw) >= 8: print("비밀번호 형식이 맞습니다.") break print("비밀번호 형식이 맞지않습니다.") # 방법2 while True: print() result = [] pw = input("비밀번호를 입력하세요. : ") print() if not any([i.isdigit() for i in pw]): result.append("숫자가 최소 1개 이상 포함되어야 합니다.") if not any([i.isupper() for i in pw]): result.append("대문자가 최소 1개 이상 포함되어야 합니다.") if len(pw) < 8 : result.append("최소 8자리 이상이어야 합니다.") if len(result) == 0: print("비밀번호 형식이 맞습니다.") break else: print("비밀번호 형식이 아래와 같이 맞지 않습니다.") for txt in result: print("-->", txt) ## 결과 비밀번호를 입력하세요. : abc 비밀번호 형식이 맞지않습니다. 비밀번호를 입력하세요. : abc1 비밀번호 형식이 맞지않습니다. 비밀번호를 입력하세요. : abc1A 비밀번호 형식이 맞지않습니다. 비밀번호를 입력하세요. : abcdfa1 비밀번호 형식이 맞지않습니다. 비밀번호를 입력하세요. : abcdeaA1 비밀번호 형식이 맞습니다. 비밀번호를 입력하세요. : aaa 비밀번호 형식이 아래와 같이 맞지 않습니다. --> 숫자가 최소 1개 이상 포함되어야 합니다. --> 대문자가 최소 1개 이상 포함되어야 합니다. --> 최소 8자리 이상이어야 합니다. 비밀번호를 입력하세요. : aaa1 비밀번호 형식이 아래와 같이 맞지 않습니다. --> 대문자가 최소 1개 이상 포함되어야 합니다. --> 최소 8자리 이상이어야 합니다. 비밀번호를 입력하세요. : aaa1111A 비밀번호 형식이 맞습니다.
최신 댓글