From 129264f1eb34679686def92625926aa4062e9ece Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D8=A3=D8=AD=D9=85=D8=AF=20=D8=A7=D9=84=D9=85=D8=AD=D9=85?= =?UTF-8?q?=D9=88=D8=AF=D9=8A=20=28Ahmed=20El-Mahmoudy=29?= Date: Mon, 16 Mar 2026 00:18:16 +0100 Subject: [PATCH] No need to convert string.* to sets --- ch06-functions/e27b1_password_checker.py | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/ch06-functions/e27b1_password_checker.py b/ch06-functions/e27b1_password_checker.py index b6e82c5..4a39c87 100755 --- a/ch06-functions/e27b1_password_checker.py +++ b/ch06-functions/e27b1_password_checker.py @@ -6,31 +6,27 @@ def create_password_checker(min_uppercase, min_lowercase, min_punctuation, min_digits): - uppercase_set = set(string.ascii_uppercase) - lowercase_set = set(string.ascii_lowercase) - punctuation_set = set(string.punctuation) - digits_set = set(string.digits) def check_password(password): if len([one_character for one_character in password - if one_character in uppercase_set]) < min_uppercase: + if one_character in string.ascii_uppercase]) < min_uppercase: print(f'Not enough uppercase letters; min is {min_uppercase}') return False elif len([one_character for one_character in password - if one_character in lowercase_set]) < min_lowercase: + if one_character in string.ascii_lowercase]) < min_lowercase: print(f'Not enough lowercase letters; min is {min_lowercase}') return False elif len([one_character for one_character in password - if one_character in punctuation_set]) < min_punctuation: + if one_character in string.punctuation]) < min_punctuation: print(f'Not enough punctuation; min is {min_punctuation}') return False elif len([one_character for one_character in password - if one_character in digits_set]) < min_digits: + if one_character in string.digits]) < min_digits: print(f'Not enough digits; min is {min_digits}') return False else: