鱼C论坛

 找回密码
 立即注册
查看: 2209|回复: 3

[已解决]萌新代码求改进

[复制链接]
发表于 2020-2-4 23:18:06 | 显示全部楼层 |阅读模式

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

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

x
本帖最后由 只嗮网不打鱼 于 2020-2-4 23:18 编辑

这段代码本想按着流程图走的,但是人笨,代码应该本身应该还能改进,就是提醒输入次数的地方,改进代码请注释下,谢谢啦

流程图
1.png
#user_name = 只晒网不打鱼
#password = 123456

counts = 3
while counts>0:
        user_name = input("请输入你的账户:")
        if user_name=="只晒网不打鱼":
                break
        else:
                if counts==3:
                        print("用户名错误,你还有2次机会")
                if counts==2:
                        print('用户名错误,你还有1次机会,请认真输入:')
                        
                counts=counts-1
        if counts ==0:
                print('多次错误,系统已退出!')
                
counts1 = 3
while user_name == '只晒网不打鱼' and counts1>0:
        password = int(input('请输入你的密码:'))
        if password==123456:
                print('恭喜你,登陆成功!')
                break
        else:
                if counts1==3:
                        print("密码错误,你还有2次机会")
                        print('请重新输入你的密码:')
                if counts1==2:
                        print('你还有1次机会')
        counts1 = counts1-1
        if counts1==0:
                print('密码多次输入错误,系统已退出')
                        
最佳答案
2020-2-5 00:06:14
name = False
for counts in range(3, 0, -1):
    user_name = input("请输入你的账户:")
    if user_name=="只晒网不打鱼":
        name = True
        break
    if counts==3:
        print("用户名错误,你还有2次机会")
    elif counts==2:
        print('用户名错误,你还有1次机会,请认真输入:')
    else:
        print('多次错误,系统已退出!')
if name == True:
    for counts in range(3, 0, -1):
        password = int(input('请输入你的密码:'))
        if password==123456:
            print('恭喜你,登陆成功!')
            break
        if counts==3:
            print("密码错误,你还有2次机会")
            print('请重新输入你的密码:')
        elif counts==2:
            print('你还有1次机会')
        else:
            print('密码多次输入错误,系统已退出')
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-2-5 00:06:14 | 显示全部楼层    本楼为最佳答案   
name = False
for counts in range(3, 0, -1):
    user_name = input("请输入你的账户:")
    if user_name=="只晒网不打鱼":
        name = True
        break
    if counts==3:
        print("用户名错误,你还有2次机会")
    elif counts==2:
        print('用户名错误,你还有1次机会,请认真输入:')
    else:
        print('多次错误,系统已退出!')
if name == True:
    for counts in range(3, 0, -1):
        password = int(input('请输入你的密码:'))
        if password==123456:
            print('恭喜你,登陆成功!')
            break
        if counts==3:
            print("密码错误,你还有2次机会")
            print('请重新输入你的密码:')
        elif counts==2:
            print('你还有1次机会')
        else:
            print('密码多次输入错误,系统已退出')
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-2-5 01:16:02 | 显示全部楼层

版主万岁,不过还是有点蒙,给点注释呗,爱你
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-2-5 19:38:08 | 显示全部楼层
只嗮网不打鱼 发表于 2020-2-5 01:16
版主万岁,不过还是有点蒙,给点注释呗,爱你

1.已知次数的循环,用for更简洁
2.无论是否完成第二行的for循环,最后都要到13行处。所以加上一个变量判断用户名是否正确,如果正确再进入14行for循环。
3.其他部分基本上是照着你的稍作改变
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-12-23 11:08

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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