Enable Javascript in your browser and then refresh this page, for a much enhanced experience.
First solution in Clear category for Acceptable Password VI by Mohamed-Hossam
def is_acceptable_password(password):
if 'password' in password.lower():
return False
if len(set(password)) > 2 and len(password) > 9:
return True
contains_digits = [letter.isnumeric() for letter in password]
if len(set(password)) > 2 and False in contains_digits and any(contains_digits) and len(password) > 6:
return True
return False
if __name__ == "__main__":
# These "asserts" are used for self-checking and not for an auto-testing
assert is_acceptable_password("short") == False
assert is_acceptable_password("short54") == True
assert is_acceptable_password("muchlonger") == True
assert is_acceptable_password("ashort") == False
assert is_acceptable_password("muchlonger5") == True
assert is_acceptable_password("sh5") == False
assert is_acceptable_password("1234567") == False
assert is_acceptable_password("12345678910") == True
assert is_acceptable_password("password12345") == False
assert is_acceptable_password("PASSWORD12345") == False
assert is_acceptable_password("pass1234word") == True
assert is_acceptable_password("aaaaaa1") == False
assert is_acceptable_password("aaaaaabbbbb") == False
assert is_acceptable_password("aaaaaabb1") == True
assert is_acceptable_password("abc1") == False
assert is_acceptable_password("abbcc12") == True
print("Coding complete? Click 'Check' to earn cool rewards!")
June 3, 2022