当前位置: 首页 > 知识库问答 >
问题:

当从文件中输入正确的密码和用户名时,中断功能不起作用

董和风
2023-03-14

当我从文件中输入正确的用户名和密码时,中断功能不起作用。“接触到一些特别的东西”这几个字无限地印出来。我该如何解决这个问题?如果用户输入的密码/用户名错误,我希望程序重新启动。

content2=input('Username:')
content=input('Password:')

while True:
    file=open('username1.txt','r')
    data1 =file.read()
    file.close()

    file1=open('password1.txt','r')
    data2 =file1.read()
    file1.close()

    data1 = data1.split("\n")
    data2 = data2.split("\n")

    for i in range(len(data1)):
        if data1[i] == content2 and data2[i] == content:
            print('You have access to something special.')
            break
        else:
            print('Access denied.')

共有2个答案

董高畅
2023-03-14

你可以设置一面旗帜来摆脱这段时间:

with open('username1.txt') as infile:
    data1 = infile.read().split('\n')

with open('password1.txt') as infile:
    data2 = infile.read().split('\n')

flag = True
while flag:
    content2 = input('Username:')
    content = input('Password:')

    for i in range(len(data1)):
        if data1[i] == content2 and data2[i] == content:
            print('You have access to something special.')
            flag = False
            break
        else:
            print('Access denied.')
淳于禄
2023-03-14

从你最近的编辑中,我看到了你真正想要的...

注意,我在这里删除了第二个中断,就像通过用户名循环一样,如果输入的用户名不匹配,我们不想立即拒绝,我们要继续检查。。。

file = open('username1.txt','r')
usernames = file.read().split("\n")
file.close()

file = open('password1.txt','r')
passwords = file.read().split("\n")
file.close()

passed = False

while not passed:
    username = input('Username:')
    password = input('Password:')
    for i in range(len(usernames)):
        if usernames[i] == username and passwords[i] == password:
            print('You have access to something special.')
            passed = True
            break
    else:
        print('Access denied. Try again')
 类似资料:
  • 问题内容: 我有一个禁用自动完成功能的表单,但是它无法正常工作,并且使自动完成功能在Firefox和更高版本的chrome中启用 当类型从密码更改为文本时,它可以在所有浏览器中使用。谁能帮助解决这个问题? 问题答案: 浏览器通常具有两个与表单相关但又不同的功能: 表单自动完成,类型(和类似类型)的项目收集键入的值并以下拉列表的形式提供给他们。 (这是一个简单的功能,效果很好。) 密码管理器,当浏览

  • 本文向大家介绍JavaScript判断用户名和密码不能为空的实现代码,包括了JavaScript判断用户名和密码不能为空的实现代码的使用技巧和注意事项,需要的朋友参考一下 JavaScript判断用户名和密码不能为空的实现代码 以上这篇JavaScript判断用户名和密码不能为空的实现代码就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持呐喊教程。

  • 问题内容: 我们正忙于为客户开发Java Web服务。有两种可能的选择: 将加密的用户名/密码存储在Web服务客户端上。从配置读取。客户端上的文件,解密并发送。 将加密的用户名/密码存储在Web服务器上。从配置读取。Web服务器上的文件,解密并在Web服务中使用。 Web服务使用用户名/密码来访问第三方应用程序。 客户端已经具有提供此功能的类,但是此方法涉及以明文方式发送用户名/密码(尽管在内联网

  • 我的代码不会跳出while循环,而是仍然要求用户输入。当我按enter时,它不会再次打印“::”,但从不执行que.view()

  • 我正在编写一个代码,生成一个随机数,然后将这个数字分配给字符串字母中的一个字母,然后用户必须猜测该字母。 我正在尝试循环问题“Enter one lowercase letter”:如果用户输入的字母与不匹配,但同时我必须确保该字母都是小写的(这是我们在课堂上没有学到的,但经过搜索我找到了一个解决方案,希望这是正确的方法)。 如果用户输入不正确的低字母,则循环结束。当与匹配时,它确实起作用。 我要

  • 问题内容: 正在尝试在提示(URL给定)中输入数据,以下代码给我一个错误。请帮我这些吗? 我尝试过: 这也是行不通的。 问题答案: 当你一起工作通过 3.6.1可以绕过通过嵌入的弹出和在自身如下。 此解决方案将打开URL http://the-internet.herokuapp.com/basic_auth并使用有效的username和password凭据进行身份验证。