class Accounting: def __init__(self,income,pay): self.i=income self.p=pay def surplus(self): incomes=sum(self.i) pays=sum(self.p) sur=incomes-pays print("一年剩余{}".format(sur)) def average(self): income_age=sum(self.i)/len(self.i) pay_age=sum(self.p)/len(self.p) print("平均收入{}\n平均支出{}".format(income_age,pay_age)) li1=[5000,5200,5500,5300,5000,5600,5100,5400,5200,5000,5400,5300] li2=[1000,900,1100,500,800,2000,700,1000,1000,900,1100,1000] a1=Accunting(li1,li2) a1.surplus() a1.average() 帮我看一下这些代码哪里错了
时间: 2023-12-12 08:05:30 浏览: 413
代码中有一个类名错误,应该是 `Accounting` 而不是 `Accunting`,修改后代码如下:
```
class Accounting:
def __init__(self, income, pay):
self.i = income
self.p = pay
def surplus(self):
incomes = sum(self.i)
pays = sum(self.p)
sur = incomes - pays
print("一年剩余{}".format(sur))
def average(self):
income_age = sum(self.i) / len(self.i)
pay_age = sum(self.p) / len(self.p)
print("平均收入{}\n平均支出{}".format(income_age, pay_age))
li1 = [5000, 5200, 5500, 5300, 5000, 5600, 5100, 5400, 5200, 5000, 5400, 5300]
li2 = [1000, 900, 1100, 500, 800, 2000, 700, 1000, 1000, 900, 1100, 1000]
a1 = Accounting(li1, li2)
a1.surplus()
a1.average()
```
另外,代码中 `average` 方法中计算平均值的代码有误,应该使用 `self.i` 和 `self.p` 分别计算平均收入和平均支出,修改后的代码已经更新。
阅读全文