【问题标题】:Python Dictionary Username and PasswordPython 字典用户名和密码
【发布时间】:2021-04-11 14:16:02
【问题描述】:

我的代码按照我希望的方式运行。我想添加的唯一一件事,但我不知道该怎么做,是用户在输入错误密码时应该只尝试输入五次密码,之后程序应该告诉他们他们被踢出系统。有什么帮助吗?

这是我的代码:

    def main():
       username_password = {"Maria":"hola",
                        "Victoria":"bye"} 
       login_username = str(input("Please enter your username.\n")) 
       login_password = str(input("Please enter your password.\n"))  
       login_username, login_password = login_username.strip(), login_password.strip() 
      if login_username in username_password and login_password == 
    username_password[login_username]: 
           print("Logged in")  
       else: 
          print("incorrect username / password, please try again")
    
    
main()

【问题讨论】:

    标签: python if-statement user-interface passwords


    【解决方案1】:

    说实话并不难,只需像这样创建一个 for 循环

    def main():
       username_password = {"Maria":"hola","Victoria":"bye"}
       for x in range(5):
       login_username = input("Please enter your username.\n")
       login_password = input("Please enter your password.\n") 
       login_username, login_password = login_username.strip(), login_password.strip() 
      if login_username in username_password and login_password == 
    username_password[login_username]: 
           print("Logged in")  
       else: 
          print("incorrect username / password, please try again")
          # you can write here print('try again)
    
    
    main()
    

    告诉你第一个值是一个键,所以如果你在(字典名称)中创建了一些东西,如果你希望它在值之间搜索,它会在键而不是值之间搜索,写 dictionary.values() login_username = input("请输入您的用户名。\n")

    【讨论】:

      【解决方案2】:

      你只需要一个 while 或 for 循环。如果他们得到正确的用户名和密码,它就会跳出循环。如果错误,它会继续询问他们用户名和密码,同时打印错误声明。请尝试以下操作:

      def main():
          tries = 0
          username_password = {"Maria":"hola",
                          "Victoria":"bye"} 
          while tries < 5:
              login_username = str(input("Please enter your username.\n")) 
              login_password = str(input("Please enter your password.\n"))  
              login_username, login_password = login_username.strip(), login_password.strip() 
              if login_username in username_password and login_password == username_password[login_username]: 
                 print("Logged in")
                 break
              else: 
                print("incorrect username / password, please try again")
                tries += 1
          
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-04-07
        • 1970-01-01
        • 2011-05-27
        • 2020-10-27
        • 2023-01-29
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多