with open("emails.txt", "a+") as emailList:
for line in emailList:
if str(emailEntry.get()) in line:
print("Someone already used this e-mail")
break;
else:
emailList.write("\n" + str(emailEntry.get()))
#此代码段应检查emails.txt中的字符串是否与tkinter中的Entry小部件输入的字符串相同,是否与输入的字符串相同,则需要打印“有人已使用此电子邮件”并停止if语句。如果emails.txt中的字符串与输入的字符串不同,则应将该字符串添加到文件中。#但是我的程序每次(无论输入什么)都不做任何事情
这是因为您以a+
模式打开文件,该模式将文件指针放在文件末尾。因此,for循环将立即结束,并且什么也不会发生。
您需要以r+
模式打开文件。下面是一个工作示例:
email = emailEntry.get().strip()
if email:
with open('emails.txt', 'r+') as emailList:
found = False
for line in emailList:
if email == line.strip():
found = True
break
if found:
print('Someone already used this e-mail')
else:
print('add', email, 'to file')
emailList.write('\n'+email)
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句