目录
一、实战场景
密码强度检测规则:
- 1、至少包含一个数字
- 2、至少包含一个大写字母
- 3、长度至少 8 位
二、主要知识点
- while 循环
- 推导式
- 列表 any 函数
- 命令行 input
三、菜鸟实战
马上安排!
1、创建 python 文件
''' Author: 菜鸟实战 实战场景: 密码强度检测 ''' # 导入系统包 import platform ''' # 密码强度检测规则 1 至少包含一个数字 2 至少包含一个大写字母 3 长度至少 8 位 ''' print("Hello,菜鸟实战") while True: password = input("请输入待检测密码: ") # 推导式使用 print("数字检测: ", [i.isdigit() for i in password]) print("大写字母检测: ", [i.isupper() for i in password]) print("密码长度: ", len(password)) # 是否有数字, 推导式检测 hasNumber = any([i.isdigit() for i in password]) # 是否有大写字母, 推导式检测 hasUpper = any([i.isupper() for i in password]) if hasNumber and hasUpper and len(password) >= 8: print("密码符合规则, 检查通过") break else: print("密码校验未通过, 请重新输入") print("版本", platform.python_version())
2、运行结果
Hello,菜鸟实战
请输入待检测密码: 123213
数字检测: [True, True, True, True, True, True]
大写字母检测: [False, False, False, False, False, False]
密码长度: 6
密码校验未通过, 请重新输入
请输入待检测密码: abc1234
数字检测: [False, False, False, True, True, True, True]
大写字母检测: [False, False, False, False, False, False, False]
密码长度: 7
密码校验未通过, 请重新输入
请输入待检测密码: Abc34567
数字检测: [False, False, False, True, True, True, True, True]
大写字母检测: [True, False, False, False, False, False, False, False]
密码长度: 8
密码符合规则, 检查通过
版本 3.10.4
菜鸟实战,持续学习!