请修正以下代码class Sale: def __int__(self): self.sale_info = dict() self.sum = 0 self.n = 0 self.average = 0 def add(self,num,quantity,price): qk = [quantity,price] self.sale_info[num] = qk def show(self): print('输入的信息为:',self.sale_info) def total(self): for i in self.sale_info.values(): self.sum += i[0]*i[i] self.n = i[0] self.average = self.sum/self.n def display(self): print('当天的销售金额、平均售价为:%s,%s'%(self.sum,self.sum/self.n)) sale = Sale() sale.add(101, 100, 24) sale.add(102, 101, 22) sale.add(103, 104, 23) sale.show() sale.display()
时间: 2024-01-06 20:06:29 浏览: 30
修正后的代码如下:
```
class Sale:
def __init__(self):
self.sale_info = dict()
self.sum = 0
self.n = 0
self.average = 0
def add(self,num,quantity,price):
qk = [quantity,price]
self.sale_info[num] = qk
def show(self):
print('输入的信息为:',self.sale_info)
def total(self):
for i in self.sale_info.values():
self.sum += i[0]*i[1]
self.n += i[0]
self.average = self.sum/self.n
def display(self):
self.total()
print('当天的销售金额、平均售价为:%s,%s'%(self.sum,self.average))
sale = Sale()
sale.add(101, 100, 24)
sale.add(102, 101, 22)
sale.add(103, 104, 23)
sale.show()
sale.display()
```
主要是在 `total()` 方法中修正了计算总销售额和总数量的错误,并在 `display()` 方法中调用了 `total()` 方法以计算平均售价。