Enable Javascript in your browser and then refresh this page, for a much enhanced experience.
Using Regular Expressions solution in Clear category for House Password by BirrellWalsh
import re # We need the regex module
def checkio(data):
if len(data) < 10: # If data is less than ten characters...
return False # it is a fail, so give False.
else: # Else
lower = re.compile('[a-z]') # Make a lower case RE Object
caps = re.compile('[A-Z]') # Make an upper case RE Object
digits = re.compile('[0-9]') # Make a digit RE Object
lowerOK = (lower.search(data) != None) # check: is there > 0 lower case?
capsOK = (caps.search(data) != None) # check: is there > 0 upper case?
digitsOK = (digits.search(data) != None) # check: is there > 0 digits?
return lowerOK and capsOK and digitsOK # return: all 3 checks met?
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"
Jan. 22, 2015
Comments: