程序员最近都爱上了这个网站  程序员们快来瞅瞅吧!  it98k网:it98k.com

本站消息

站长简介/公众号

  出租广告位,需要合作请联系站长

+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

暂无数据

如何让程序在用户输入错误的详细信息后再给用户一次机会?

发布于2024-11-06 19:33     阅读(112)     评论(0)     点赞(20)     收藏(3)


它不会给用户 3 次机会,而是只打印 3 次“拒绝访问”,但我不知道如何更改代码,以便给用户 3 次机会,并且即使用户输入了错误的详细信息,它也会打印“欢迎”,所以如果有人能帮助我,我将不胜感激

老实说,我是个新手程序员,所以我并不指望它能起作用,但如果它真的起作用了,我会期望它给用户 3 次机会,如果他们都选错了,那么它会打印出类似“帐户被锁定”的内容

username = "Student1"
password = "WatfordLenMein"
input1 = input("Enter username: ")
input2 = input("Enter password: ")
for i in range(3):
    if username == input1 and password == input2:
        break
    else:
        print("Access denied")
print("Welcome")

解决方案


你的代码应该看起来像这样:

username = "Student1"
password = "WatfordLenMein"

is_login_successful = False

for i in range(3):
    # ask the user to enter login/password on every iteration of the loop.
    # if you keep this outside, then the user will be prompted to enter
    # credentials only once .. which is not what you want.
    input1 = input("Enter username: ")
    input2 = input("Enter password: ")

    # if the login/password match, then the loop is over
    if username == input1 and password == input2:
        is_login_successful = True
        break
    else:
        print("Access denied")

# as suggested by kuro, the use of a flag simplifies the overall logic
if (not is_login_successful):
    print("Account locked out")
    exit(1)

print("Welcome")
...


所属网站分类: 技术文章 > 问答

作者:黑洞官方问答小能手

链接:https://www.pythonheidong.com/blog/article/2043855/1dca03a510e5c93ab04a/

来源:python黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

20 0
收藏该文
已收藏

评论内容:(最多支持255个字符)