lbl8029 发表于 2021-6-18 11:07

判断密码是否正确,请多指教

刚刚接触Python,在坛子里看了不少大神的帖子,感觉我喜欢上了Python,自己也试一下!
就这一点代码让我思索了2个小时才搞出来,还不知道写的对不对,请大神驻足指点

#密码锁,密码输错3次,提示超过三次,稍后再试
a=1
while a<4:
    i=int(input('请输入开门密码:'))
    if i==333:
      print('欢迎回家')
      break
    elif i!=333:
      a+=1
      print('密码错误,请重新输入')
      while a>3:
            print('错误密码已超三次输入,请稍后重试')
            break

lgsp_Jim 发表于 2021-6-18 11:27

最后用if判断a>3就可以了,不用再循环了

lbl8029 发表于 2021-6-18 11:50

lgsp_Jim 发表于 2021-6-18 11:27
最后用if判断a>3就可以了,不用再循环了

好的,感谢指点,试一下

额微粒波地 发表于 2021-6-18 12:08

你这个写的有点问题,前面是if=333后面又来一个elif不等于333,你直接else不行吗

byh3025 发表于 2021-6-18 12:32

i!=333不知有没有必要了,

cptw 发表于 2021-6-18 12:58

感谢楼主分享

lianyi 发表于 2021-6-18 13:53

msg = '请输入开门密码:'
i = 0
while i < 3:
        p = int(input(msg))
        if p == 333:
                print('欢迎回家')
                break

        i += 1
        if i == 3:
                print('错误密码已超三次输入,请稍后重试')
                break

        msg = '密码错误,请重新输入:'

倾情 发表于 2021-6-18 13:58

互相学习
a = 0
while a<=3:
   psw = int(input("请输入密码:"))
   if paw==333:
      print("欢迎回家")
      break
    else:
      print("密码错误")
      a += 1
      if a>=3:
            print("错误三次")
            break

JasonJHu 发表于 2021-6-18 15:18


for i in range(3):
    # print (i)
    pwd = int(input("请输入密码:"))
    if pwd == 333:
      print("欢迎回家")
      break
    else:
      print("密码错误")
    if i+1 == 3:
      print("错误三次")

lbl8029 发表于 2021-6-18 15:45

lianyi 发表于 2021-6-18 13:53
msg = '请输入开门密码:'
i = 0
while i < 3:


您这个写的好,专业又学一招msg
页: [1] 2
查看完整版本: 判断密码是否正确,请多指教