class Bill:
def __init__(self,type,amount):
self.amount = amount
self.type = type
def total(*args):
total_bill = []
for arg in args:
total_bill.append(arg.amount)
return sum(total_bill)
b1 = Bill('Elect',500)
b2 = Bill('Gas',300)
b3 = Bill('Other',100)
print(Bill.total(b1,b2,b3))
print(b1.total(b2))
我试图理解Python OOP逻辑。在这里,我创建了一个方法(total
),用于计算bill对象的总金额。代码可以工作,但似乎非常不寻常,因为第二个打印(b1.total(b2)
)是无意义的(当我将其作为实例的方法调用时)。因此,我想知道这是否一种体面的方式?我的意思是为类内实例之间的计算创建一个方法?获得账单总额的最佳方式是什么。(账单的数量可能会高得多。)
您可以使用类变量保存所有账单项目,然后在计算总额时使用该变量,而不是将项目作为参数传递
相关问题 更多 >
编程相关推荐