我在使用类进行编码方面非常陌生,因此将不胜感激。因此,我试图提示用户输入基本信息,例如名称,用户名和密码。然后,我想保存一个以输入的用户名和所有其他输入的属性命名的类对象。我将这些属性中的每一个附加到列表中,以便稍后调用它们。但是,我不断收到一个错误,指出python没有名为“ z”的属性。
class Login:
usernames = []
passwords = []
firsts = []
lasts = []
def __init__(self, first, last, username, password):
self.first = first
self.last = last
self.username = username
self.password = password
Login.usernames.append(self.username)
Login.passwords.append(self.password)
Login.firsts.append(self.first)
Login.lasts.append(self.last)
def fullname(self):
return '{} {}'.format(self.first, self.last)
x = input('What is your first name? ')
y = input('What is your last name? ')
z = input('What do you want your username to be?')
w = input('What do you want your password to be? ')
z = Login(x , y, z, w)
print(Login.z)
谢谢!
答案 0 :(得分:1)
您正在尝试访问z
类的Login
成员,但该成员不存在,这就是为什么您会收到错误消息。看起来您正在尝试在全局范围内使用z
变量,在这种情况下,您无需在变量前加上Login
。您可以使用z.methodname()
来调用所需的方法。例如,如果您想打印z
的全名,请执行以下操作:
print(z.fullname())
有关变量作用域的更多信息,请参见here。