所以我在python中有以下代码块,基本上是打开一个文本文件,从文件的文本内容中组成一个数组(逐行拆分),然后继续从用户处获取输入并将该输入与每个输入进行比较数组中的术语。尽管数组中有用户输入的字符串,与输入的字符串完全相同,但程序无法分辨两个字符串是否相等。如何比较字符串?如果这种说法是正确的,可能是造成不平等的原因?我尝试用“ is”代替“ ==”,但是那也不起作用。userinput
的输入均为frogeyedpeas
,UserArray[0]
的输入均为frogeyedpeas
文件Usernames.txt
frogeyedpeas
vsauce
(在vsauce之后,还有另外一行完全空白)
代码如下:
Usernames = open('Usernames.txt', 'r+')
UserArray = Usernames.read().split("\n")
userinput = raw_input("Enter Username: ")
passinput = raw_input("Enter Password: ")
i = 0
q = len(UserArray)
while(i < q):
founduser = 0
print userinput, UserArray[i], UserArray #out
if(UserArray[i] == userinput):
founduser = 1
if(PassArray[i] == passinput):
userstatus = i
founduser = 2
i = i + 1
最佳答案
好吧,如果founduser等于1,您是否想打破循环以测试其是否有效?该代码块使用户每次在while循环中运行代码时都会重置。也许说while(i