Enable Javascript in your browser and then refresh this page, for a much enhanced experience.
Solution based on boolean flags solution in Clear category for Acceptable Password V by Molot
# Taken from mission Acceptable Password IV
# Taken from mission Acceptable Password III
# Taken from mission Acceptable Password II
# Taken from mission Acceptable Password I
def is_acceptable_password(password: str) -> bool:
n = len(password)
alpha_flg, digit_flg = False, False
for c in password:
alpha_flg = True if c.isalpha() else alpha_flg
digit_flg = True if c.isdigit() else digit_flg
return ('password' not in password.lower()) and (n > 6) and (True if (n > 9) else all([alpha_flg, digit_flg]))
if __name__ == '__main__':
print("Example:")
print(is_acceptable_password('short'))
# These "asserts" are used for self-checking and not for an auto-testing
assert is_acceptable_password('short') == False
assert is_acceptable_password('muchlonger') == False
assert is_acceptable_password('ashort') == False
assert is_acceptable_password('muchlonger5') == True
assert is_acceptable_password('sh5') == False
assert is_acceptable_password('1234567') == False
print("Coding complete? Click 'Check' to earn cool rewards!")
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
print("The mission is done! Click 'Check Solution' to earn rewards!")
Dec. 3, 2022