kaobiel 发表于 2022-8-2 22:27:29

新手小白求助

本帖最后由 青出于蓝 于 2022-8-3 09:22 编辑

nomd=('asdf')
assd=('1234567')
a=3
while a>0:
    ebe=input('请输入用户名:')
    ass=input('请输入密码:')
    if nomd==ebe and assd==ass:
      print('登录成功')
      break
    else:
      if nomd!=ebe:
            print('用户名输入错误'+str(a-1)+'次机会')
      else:
            print('密码错误'+str(a-1)+'次机会')

    a=a-1
    print('你已失败3次,请稍后重试')




最后一行带码为什么只要输入错一次就会跟着运行,缩进好像也没有问题啊

N781791878 发表于 2022-8-2 22:42:22

nomd=('asdf')
assd=('1234567')
a=3
while a>0:
    ebe=input('请输入用户名:')
    ass=input('请输入密码:')
    if nomd==ebe and assd==ass:
      print('登录成功')
      break
    else:
      if nomd!=ebe:
            print('用户名输入错误'+str(a-1)+'次机会')
      else:
            print('密码错误'+str(a-1)+'次机会')
#####################################################            
      a=a-1
if a==0:
    print('你已失败3次,请稍后重试')

临时号 发表于 2022-8-2 22:44:10

nomd=('asdf')
assd=('1234567')
a=3
while a>0:
    ebe=input('请输入用户名:')
    ass=input('请输入密码:')
    if nomd==ebe and assd==ass:
      print('登录成功')
      break
    else:
      if nomd!=ebe:
            print('用户名输入错误'+str(a-1)+'次机会')
      else:
            print('密码错误'+str(a-1)+'次机会')

    a=a-1
else:
    print('你已失败3次,请稍后重试')

fishc.love 发表于 2022-8-3 12:01:39

缩进确实是没有什么问题,但是当a==0的时候是一种特殊情况,应该将这种情况写出循环,用一个if语句就能够实现啦{:10_256:}
nomd=('asdf')
assd=('1234567')
a = 3
while a > 0:
    ebe = input('请输入用户名:')
    ass = input('请输入密码:')
    if nomd == ebe and assd == ass:
      print('登录成功')
      break
    else:
      if nomd!=ebe:
            print('用户名输入错误'+str(a-1)+'次机会')
      else:
            print('密码错误'+str(a-1)+'次机会')

    a = a-1
if a == 0:
    print('你已失败3次,请稍后重试')
页: [1]
查看完整版本: 新手小白求助