import re

password = raw_input("Enter string to test: ")

atLeastTenCharacters = ".{10,}"
hasAtLeastTenCharacters = re.findall(atLeastTenCharacters, password)
if (not hasAtLeastTenCharacters):
    print "Password should be at least 10 characters long!"

atLeastOneDigit = "[0-9]"
hasAtLeastOneDigit = re.findall(atLeastOneDigit, password)
if (not hasAtLeastOneDigit):
    print "Password should have at least one digit!"

atLeastOneUpper = "[A-Z]"
hasAtLeastOneUpper = re.findall(atLeastOneUpper, password)
if (not hasAtLeastOneUpper):
    print "Password should have at least one upper case character!"

atLeastOneLower = "[a-z]"
hasAtLeastOneLower = re.findall(atLeastOneLower, password)
if (not hasAtLeastOneLower):
    print "Password should have at least one lower case character!"

specialCharacters = "[^A-Za-z0-9]"
hasSpecialCharacters = re.findall(specialCharacters, password)
if (hasSpecialCharacters):
    print "Password should NOT have special characters!"

if (hasAtLeastTenCharacters and hasAtLeastOneDigit and hasAtLeastOneUpper and hasAtLeastOneLower and (not hasSpecialCharacters)):
    print "\nValid password"
else:
    print "\nPassword not valid"