我无法按用户输入的类输入的对象来打印值

时间:2019-07-01 19:05:24

标签: python-3.x

print(xyz.age)#无法打印此

class abc:

    def __init__(self):
            pass

    @classmethod   
    def getinput(self):
        self.name = input("enter your name")
        self.age= input("enter your age")
        self.gender = input("enter your gender")
        self.address = input("enter your address")
        print( 'your name is {} and age is {} your are {} and you live at {}'.format(self.name,self.age,self.gender,self.address))

xyz = abc.getinput()

print(xyz.age)#无法打印此

2 个答案:

答案 0 :(得分:1)

您没有正确实例化您的类,您只是在调用其方法之一。 试试这个...

xyz = abc()
xyz.getinput()
print('Age', xyz.age)

答案 1 :(得分:0)

两件事,

1)xyz不是您的类的实例,它只是存储您从getinput返回的任何内容(在您的情况下,您正在返回None)。

2)要访问abc类的变量,您需要创建如下实例 xyz = abc()。那么您可以通过xyz实例访问class的属性。