Python 字符串中的整数

Python 字符串中的整数,python,python-3.4,Python,Python 3.4,编写一个名为enterNewPassword的函数。此函数不接受任何参数。它会提示用户输入密码,直到输入的密码包含8-15个字符,包括至少一个数字。当密码未通过一个或两个测试时,告诉用户 我已经想出了一些解决方案,但似乎无法找到输入中是否涉及数字。这就是我到目前为止所想到的 你能帮我检查一下输入的密码中是否有数字吗?我觉得应该在一些地方打上问号。谢谢大家! def enterNewPassword(): password = input("Enter a password: ")

编写一个名为enterNewPassword的函数。此函数不接受任何参数。它会提示用户输入密码,直到输入的密码包含8-15个字符,包括至少一个数字。当密码未通过一个或两个测试时,告诉用户

我已经想出了一些解决方案,但似乎无法找到输入中是否涉及数字。这就是我到目前为止所想到的

你能帮我检查一下输入的密码中是否有数字吗?我觉得应该在一些地方打上问号。谢谢大家!

def enterNewPassword():

    password = input("Enter a password: ")

    if len(password) < 8:

        print("Your password does not contain 8-15 characters.")

    if len(password) > 15:

        print("Your password contains more than 15 characters.")

    if ??? not in password:

        print("Your password does not contain a digit.")

    if ??? in password and 8 <= len(password) >= 15:

        print("Good password!")

enterNewPassword()
def enterNewPassword():
密码=输入(“输入密码:”)
如果len(密码)<8:
打印(“您的密码不包含8-15个字符。”)
如果len(密码)>15:
打印(“您的密码包含超过15个字符。”)
如果???不在密码中:
打印(“您的密码不包含数字。”)
如果???在密码和8=15中:
打印(“好密码!”)
输入新密码()

如果要检查字符串中的数字,可以使用any()方法

如果所检查的条件至少返回一次True,那么any几乎会返回True,在本例中是“c.isdigit()

isdigit()是字符串对象中可用的一个方法,因此在调用时,您几乎要检查每个字符是否是一个数字。这里还有一个医生

这是def enterNewPassword()上的文档: 如果为True:#无限循环 s=输入(“\n\n输入密码:”) #计算字符串中的数字 如果15我从未使用过,但我喜欢它。有什么我不明白的吗?为什么要投否决票?也许吧。我很想知道为什么。可能是因为他们对这个问题总体上不满意。我认为这样做可能有点苛刻,这就是我不再问问题的原因;)你不是
any(c.isdigit() for c in password)
def enterNewPassword():

    while True:    # infinite loop
        s = input("\n\nEnter password: ")
                                 # count digits in string
        if 15 < len(s) < 8 or sum(str.isdigit(c) for c in s) < 1:
            print("Password must be 8-15 chars long and contain at least one digit:")
            continue
        else:
            print("The password is valid.")
            break

enterNewPassword()

Enter password: arte,alk;kl;k;kl;k;kl
Password must be 8-15 chars long and contain at least one digit:

Enter password: sunnyday
Password must be 8-15 chars long and contain at least one digit:


Enter password: rainyday
Password must be 8-15 chars long and contain at least one digit:


Enter password: cloudyday1
The password is valid .