Python GCSE作业帮助 - 密码

时间:2016-02-02 18:14:27

标签: python function if-statement while-loop

对于我的作业,我需要在python中创建一个用户注册系统。我需要制作一个密码部分。

Question

我打算做什么?。

这是我的代码,我无法解决什么错误:

password = input("Please enter your password: ")
passwordl = len(password)
while passwordl <= 8:
    print("password must be more than 8 characters - please try agian")
    password = input("Please enter your password: ")
passworda = password.isalpha()
passwordi = password.isdigit()
while passworda != True or passwordi != True:
    print("password needs to contain digits and characters - please re-enter")
    password = input("Please enter your password: ")

代码在函数btw中。

由于

2 个答案:

答案 0 :(得分:1)

如果 all 字符串中的成员分别是字母数字和数字,则函数isalpha()isdigit()将返回true。

您需要做的是检查字符串中的任何字符是否具有正确的属性,例如:

passworda = any([x.isalpha() for x in password])
passwordi = any([x.isdigit() for x in password])

此外,每次重新输入密码时,您都需要重做所有检查(长度和字符集检查)。

答案 1 :(得分:0)

而不是关注

api.php?action=parse&page=Paul_McCartney&prop=extracts&format=xml

在最后一次循环中再次检查时,最好只是调用密码功能,因为它效率更高。