如何计算变量中的数字数量

时间:2017-05-17 14:54:41

标签: python python-3.x

我正在尝试创建密码重置程序,其中包括计算所述密码中的小写和大写的数量。如果密码少于8个字母或者不包含大写或小写,它会拒绝密码,但是当有数字时程序会崩溃,因为它无法计算出有多少个数字:

__unicode__()

编辑:感谢您的帮助,但我的计划有效!谢谢伙计们!

2 个答案:

答案 0 :(得分:1)

您可以通过汇总contenteditable s / 1的列表来获取密码中所有数字的计数,0表示该字符是数字,{{1}否则:

1

或:

0

这也可以使用您的其他参数来完成:

>>> password= "134jhie92"
>>> sum([1 if c.isdigit() else 0 for c in password])
5

虽然扩展>>> sum(map(str.isdigit, password)) 5 语句更有意义(如panatale1所示):

lower = sum(map(str.islower, password))
upper = sum(map(str.isupper, password))
nums = sum(map(str.isdigit, password))

答案 1 :(得分:0)

创建名为num的变量并更改for循环:

for c in password:
    if c.isdigit():
        num += 1
    elif c.islower():
        lower += 1
    elif c.isupper():
        upper += 1
    else:
        pass