输入一个字符串作为密码,密码只能由数字与字母组成。编写程序判断输入的密码的强度,并输出,如图所示。判断标准如下,满足其中一条,密码强度增加一级:①有数字;②有大写字母;③有小写字母;④位数不少于8位。

输入一个字符串作为密码,密码只能由数字与字母组成。编写程序判断输入的密码的强度,并输出,如图所示。判断标准如下,满足其中一条,密码强度增加一级:①有数字;②有大写字母;③有小写字母;④位数不少于8位。

那就逐个字符判断取值范围吧
s = input("请输入测试密码(直接回车为退出):\n")
while len(s) != 0:
N = 0
B = 0
A = 0
L = 0
if len(s) >= 8:
L = 1
for a in s:
if a >= 'A' and a<='Z':
B = 1
elif a>='a' and a<='z':
A = 1
elif a>='0' and a<='9':
N = 1
print(f"{s}的密码强度为{L+A+B+N}级")
s = input("请输入测试密码(直接回车为退出):\n")
第一个测试用例不对吧,abc123应该2级啊