只嗮网不打鱼 发表于 2020-2-4 23:18:06

萌新代码求改进

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

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

流程图

#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('密码多次输入错误,系统已退出')

只嗮网不打鱼 发表于 2020-2-5 01:16:02

冬雪雪冬 发表于 2020-2-5 00:06


版主万岁,不过还是有点蒙,给点注释呗,爱你

冬雪雪冬 发表于 2020-2-5 19:38:08

只嗮网不打鱼 发表于 2020-2-5 01:16
版主万岁,不过还是有点蒙,给点注释呗,爱你

1.已知次数的循环,用for更简洁
2.无论是否完成第二行的for循环,最后都要到13行处。所以加上一个变量判断用户名是否正确,如果正确再进入14行for循环。
3.其他部分基本上是照着你的稍作改变
页: [1]
查看完整版本: 萌新代码求改进