Enable Javascript in your browser and then refresh this page, for a much enhanced experience.
any() and all(), regex solution in Clear category for House Password by lucas.stonedrake
#1st solution using string methods
def checkio(data: str) -> bool:
c1 = len(data) >= 10 # at least 10 long
c2 = any(x.isdigit() for x in data) # at least one digit
c3 = any(x.isupper() for x in data) # at least one uppercase letter
c4 = any(x.islower() for x in data) # at least one lowercase letter
return all([c1, c2, c3, c4]) #all must be True
#2nd solution using regex
def checkio(data: str) -> bool:
import re
c1 = len(data) >= 10 # at least 10 long
c2 = re.search('[0-9]', data) # at least one digit
c3 = re.search('[A-Z]', data) # at least one uppercase letter
c4 = re.search('[a-z]', data) # at least one lowercase letter
return all([c1, c2, c3, c4]) #all must be True
#Some hints
#Just check all conditions
if __name__ == '__main__':
#These "asserts" using only for self-checking and not necessary for auto-testing
assert checkio('A1213pokl') == False, "1st example"
assert checkio('bAse730onE4') == True, "2nd example"
assert checkio('asasasasasasasaas') == False, "3rd example"
assert checkio('QWERTYqwerty') == False, "4th example"
assert checkio('123456123456') == False, "5th example"
assert checkio('QwErTy911poqqqq') == True, "6th example"
print("Coding complete? Click 'Check' to review your tests and earn cool rewards!")
Dec. 16, 2020
Comments: