题目1:密码安全性检查代码
# 低级密码要求:
1. 密码由单纯的数字或字母组成
2. 密码长度小于等于8位
# 中级密码要求:
1. 密码必须由数字、字母或特殊字符(仅限:~!@#$%^&*()_=-/,.?<>;:[]{}|)任意两种组合
2. 密码长度不能低于8位
#高级密码要求:
1. 密码必须由数字、字母及特殊字符(仅限:~!@#$%^&*()_=-/,.?<>;:[]{}|)三种组合
2. 密码只能由字母开头
3. 密码长度不能低于16位
symbols = r"""`!@#$%^&*()_+-=/*{}[]|'";:/?,.<>""" #r表示引号中的东西是原始字符串
chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"
nums = "0123456789"
passwd = input("请输入需要检查的密码组合:")
length = len(passwd) # 判断长度
while (passwd.isspace() or length == 0):
#passwd.isspace()检查字符串是否有空格组成
passwd = input(" 您输入的密码为空(或空格),请重新输入: ")
if length <= 8:
flag_len = 1
elif 8 < length < 16:
flag_len = 2
else:
flag_len = 3
flag_con = 0
for each in passwd:
if each in symbols: # 判断是否包含特殊字符
flag_con += 1
break
for each in passwd:
if each in chars: # 判断是否包含字母
flag_con += 1
break
for each in passwd:
if each in nums: # 判断是否包含数字
flag_con += 1
break
# #打印结果
while 1 :
print(" 您的密码安全级别评定为:", end=' ')
if flag_len == 1 or flag_con == 1 :
print("低")
elif flag_len == 2 or flag_con == 2 :
print("中")
else :
print("高")
print(" 请继续保持 ")
break
print(" 请按以下方式提升您的密码安全级别:
1. 密码必须由数字、字母及特殊字符三种组合
2. 密码只能由字母开头
3. 密码长度不能低于 16 位")
break
题目2. 设计一个验证用户密码程序:用户只有三次机会输入错误,不过如果用户输入的内容中包含"*"则不计算在内
password = ("WangXiaolv")
count = 3
while True:
passwd = input("请输入密码:") #必须在while语句内输入,不然会陷入while的无限循环
if passwd == password:
print("密码正确,进入程序")
break #根据流程图记忆功能
elif "*" in passwd:
print("密码中不能含有*号!请重新输入:,您还有",count,"次机会")
continue
else:
print("密码输入错误,您还有",count-1,"次机会")
count -= 1
if count == 0:
print("没有机会")
break
题目3. 列表中的分数查询
name = input("请输入一个名字:")
scores = [['迷途', 85], ['黑夜', 80], ['小布丁', 65], ['福禄娃娃', 95], ['怡静', 90]]
for each in scores:
if name in each:
each[1] = str(each[1])
print(name + "的得分是:" + each[1])#引号中会直接处理为字符串
# +连接的主要是字符串类型,each[1]为数据的话用“,”连接
break
#当循环正常执行完毕后,运行else的内容,而当break退出循环不执行else的内容。
else:
print("查找的数据不存在")