我尝试使用re编写代码以将邮件存储在文件中,并在启动时检查邮件是否在该文件中,否则请问我再次输入
我尝试将self放在第28行的函数名称之前(错误)
import re
class login(object):
def check(self):
self.mail = r"([\w\.-]+)@([\w\.-]+)([\w\.-]+)"
with open('login.txt', 'r') as self.myfile:
self.line1 = self.myfile.read().replace('\n', '')
with open('username.txt', 'r') as self.usr:
self.line2 = self.usr.read().replace('\n', '')
if re.findall(self.mail, self.line1):
goon()
else:
log()
self.myfile.close()
def goon(self):
import assistant #another code to exec.
def log(self):
self.file = open("login.txt", "w")
self.file.truncate(0)
self.data = input("Your email: ")
self.file.write(self.data)
self.file.close()
l.goon()
if __name__ == '__main__':
check() #error
log()
goon()
答案 0 :(得分:1)
出现直接错误的原因是因为您缩进了“主”程序,并使其成为类的方法。
将其拉回到左边距。然后,要使用类代码,您必须创建该类的实例。这是self
,它是每个方法调用的隐式参数。
if __name__ == '__main__':
obj = login()
obj.check() #error
obj.log()
obj.goon()