Python问题求解答。

img


我这样写错在哪呢?
password = input("请输入密码:")
def check_password(password):
digit = 0
lower = 0
upper = 0
c = str(password)
if len(c) == 8:
for i in range(c):
if i.isupper() == True:
upper += 1
elif i.lower() == True:
lower += 1
elif i.isdigit() == True:
digit += 1
while upper > 0 and lower > 0 and digit > 0:
return True
else:
return False

你遍历的时候应该是for i in c:

img


另外判断小写的是islower()函数你打错了、
修改后:

password = input("请输入密码:")
def check_password(password):
    digit = 0
    lower = 0
    upper = 0
    c = str(password)
    if len(c) == 8:
        for i in c:
            if i.isupper() == True:
                upper += 1
            if i.islower() == True:
                lower += 1
            if i.isdigit() == True:
                digit += 1

        if upper > 0 and lower > 0 and digit > 0:
            return True
        else:
            return False
    else:
        return False
print(check_password(password))

您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632