鱼C论坛

 找回密码
 立即注册
查看: 2235|回复: 4

[已解决]第15课课后题密码问题

[复制链接]
发表于 2020-1-15 20:58:22 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
目标是区分密码的等级,为什么我的这个总是显示无效语法,求帮助


print'''
低级密码要求:
1. 密码由单纯的数字或小写字母组成
2. 密码长度小于等于 8 位


中级密码要求:
1. 密码必须由数字、小写字母或特殊字符任意两种组合
2. 密码长度不能低于 8 位


高级密码要求:
1. 密码必须由数字、小写字母及特殊字符三种组合
2. 密码只能由字母开头
3. 密码长度不能低于 16 位'''


password = input ('请输入您的密码:')
lowest = '123456789zxcvbnmasdfghjklqwertyuiop'
standard = '123456789zxcvbnmasdfghjklqwertyuiop$%'
highest = '123456789zxcvbnmasdfghjklqwertyuiop$%&'
length = len (password)


for each in password :


    if length <= 8 and each in lowest :
        print ('低级密码')
    elif 8 < length < 16 and each in standard :
        print ('中极密码')
    elif length > = 16 and each in highest :
        print ('高级密码')
    else :
        password = input ('您输入的密码不符合标准请重新输入:')
        continue
   


最佳答案
2020-1-15 21:01:53
第一行多了个 print。应该改成这样:
'''
低级密码要求:
1. 密码由单纯的数字或小写字母组成
2. 密码长度小于等于 8 位


中级密码要求:
1. 密码必须由数字、小写字母或特殊字符任意两种组合
2. 密码长度不能低于 8 位


高级密码要求:
1. 密码必须由数字、小写字母及特殊字符三种组合
2. 密码只能由字母开头
3. 密码长度不能低于 16 位'''


password = input('请输入您的密码:')
lowest = '123456789zxcvbnmasdfghjklqwertyuiop'
standard = '123456789zxcvbnmasdfghjklqwertyuiop$%'
highest = '123456789zxcvbnmasdfghjklqwertyuiop$%&'
length = len(password)


for each in password:

    if length <= 8 and each in lowest:
        print('低级密码')
    elif 8 < length < 16 and each in standard:
        print('中极密码')
    elif length > = 16 and each in highest:
        print('高级密码')
    else:
        password = input('您输入的密码不符合标准请重新输入:')
        continue
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-1-15 21:01:53 | 显示全部楼层    本楼为最佳答案   
第一行多了个 print。应该改成这样:
'''
低级密码要求:
1. 密码由单纯的数字或小写字母组成
2. 密码长度小于等于 8 位


中级密码要求:
1. 密码必须由数字、小写字母或特殊字符任意两种组合
2. 密码长度不能低于 8 位


高级密码要求:
1. 密码必须由数字、小写字母及特殊字符三种组合
2. 密码只能由字母开头
3. 密码长度不能低于 16 位'''


password = input('请输入您的密码:')
lowest = '123456789zxcvbnmasdfghjklqwertyuiop'
standard = '123456789zxcvbnmasdfghjklqwertyuiop$%'
highest = '123456789zxcvbnmasdfghjklqwertyuiop$%&'
length = len(password)


for each in password:

    if length <= 8 and each in lowest:
        print('低级密码')
    elif 8 < length < 16 and each in standard:
        print('中极密码')
    elif length > = 16 and each in highest:
        print('高级密码')
    else:
        password = input('您输入的密码不符合标准请重新输入:')
        continue
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-1-15 21:14:36 | 显示全部楼层
zltzlt 发表于 2020-1-15 21:01
第一行多了个 print。应该改成这样:

那个不是问题的关键所在,不过确实复制了你的代码居然好了,谢谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-1-15 21:15:25 | 显示全部楼层
昭乌达 发表于 2020-1-15 21:14
那个不是问题的关键所在,不过确实复制了你的代码居然好了,谢谢

设置为最佳答案呗~
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-1-15 21:15:48 | 显示全部楼层
'''
低级密码要求:
1. 密码由单纯的数字或小写字母组成
2. 密码长度小于等于 8 位


中级密码要求:
1. 密码必须由数字、小写字母或特殊字符任意两种组合
2. 密码长度不能低于 8 位


高级密码要求:
1. 密码必须由数字、小写字母及特殊字符三种组合
2. 密码只能由字母开头
3. 密码长度不能低于 16 位'''


password = input('请输入您的密码:')
lowest = '123456789zxcvbnmasdfghjklqwertyuiop'
standard = '123456789zxcvbnmasdfghjklqwertyuiop$%'
highest = '123456789zxcvbnmasdfghjklqwertyuiop$%&'
length = len(password)


for each in password:

    if length <= 8 and each in lowest:
        print('低级密码')
        break
    elif 8 < length < 16 and each in standard:
        print('中极密码')
        break
    elif length >= 16 and each in highest:
        print('高级密码')
        break
    else:
        password = input('您输入的密码不符合标准请重新输入:')
        continue

评分

参与人数 1贡献 +1 收起 理由
zltzlt + 1

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-12 16:13

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表