题目转载:http://python.wzms.com/s/1/79
题目描述:
编写程序,实现如下功能:输入要检测的密码,输出密码强度结果。密码字符分为数字字符、字母和其他符号三类。密码强度的检测方法为:若密码位数少于8位,则不进行强度检测,给出提示“密码位数不能少于8位,请重新输入!”。若密码位数在8位及以上,则进行强度检测:
若密码字符属于同一类字符,则密码强度为“weak”;
若密码字符属于不同的二类字符,则密码强度为“moderate”;
若密码字符属于不同的三类字符,则密码强度为“strong”。
输入格式:
输入一行字符
输出格式:
输出一行,表示检测的结果。
如果输入内容少于8个长度,输出" no"。
isalpha()方法
- 描述:Python isalpha() 方法检测字符串是否只由字母组成
- 语法:str.isalpha()
- 参数:无
- 返回值:如果字符串至少有一个字符并且所有字符都是字母则返回 True,否则返回 False
isdigit()方法
- 描述:Python isdigit() 方法检测字符串是否只由数字组成
- 语法:str.isdigit()
- 参数:无
- 返回值:如果字符串只包含数字则返回 True 否则返回 False
isalnum()方法
- 描述:Python isalnum() 方法检测字符串是否由字母和数字组成。
- 语法:str.isalnum()
- 参数:无
- 返回值:如果 string 至少有一个字符并且所有字符都是字母或数字则返回 True,否则返回 False
代码:
pass_word = input()
if len(pass_word) < 8:
print("no")
else:
if (pass_word.isalpha()) or (pass_word.isdigit()):
print("weak")
elif pass_word.isalnum():
print("moderate")
else:
print("strong")
运行结果: