python3打印一个类的参数值

时间:2017-10-08 11:02:33

标签: python-3.x class

我为参加活动的客人(与他们的合作伙伴/孩子一起)创建了一个非常标准的班级。

class Guest:
    def __init__(self, name, adult, child, infant):
        self.name = name
        self.adult = adult
        self.child = child
        self.infant = infant

并添加了几个对象:

adam_s = Guest('Adam Smith', 2, 0, 1)
sandra_b = Guest('Sandra Bind', 2, 0,1)
alince_d = Guest('Alice Donovan',2,0,0)
parents_smith = Guest('Mr&Ms Smith', 2,0,0)

我将为此课程添加越来越多的对象。在任何时候,我都希望能够使用Guest课程为所有对象的所有成人,儿童和婴儿的数量求和。

我试过,以下但结果不是我想要的(不给我每个属性的实际值)。

for attr,value in vars(Guest).items():
    print(attr, value)

这可能是一个非常令人讨厌的问题,但我一直在寻找,但我无法找到解决方案。

2 个答案:

答案 0 :(得分:0)

您可以使用以下内容:

class Guest:
    adultCounter = 0
    def __init__(self, name, adult, child, infant):
       # your code here
       Guest.adultCounter +=1

然后你可以像这样调用这个值:

print ('Total adults: {}'.format(Guest.adultCounter))

答案 1 :(得分:0)

你可以试试这个

TextBox

输出:

List