编写一个商品销售类,必须具有的属性如下:销售数量、商品零售单价、商品批发折扣百分比、商品起批数量,并且拥有如下方法:记录商品销售数量,商品销售总额。
时间: 2024-02-05 13:03:03 浏览: 25
好的,根据您的要求,我给您编写一个Python的商品销售类,代码如下:
```python
class ProductSales:
def __init__(self, retail_price, wholesale_discount_percent, min_wholesale_qty):
self.sales_qty = 0
self.sales_total = 0
self.retail_price = retail_price
self.wholesale_discount_percent = wholesale_discount_percent
self.min_wholesale_qty = min_wholesale_qty
def record_sale(self, qty):
self.sales_qty += qty
if qty >= self.min_wholesale_qty:
sale_price = qty * self.retail_price * (100 - self.wholesale_discount_percent) / 100
else:
sale_price = qty * self.retail_price
self.sales_total += sale_price
return sale_price
```
这个类的初始化方法需要传入三个参数,分别是商品零售单价、商品批发折扣百分比和商品起批数量。在初始化方法中,我们定义了四个属性,分别是销售数量、销售总额、商品零售单价和商品批发折扣百分比,还有一个商品起批数量的属性。
这个类有一个record_sale()方法,用于记录商品的销售数量和销售总额。这个方法需要传入销售数量,然后根据商品起批数量和商品批发折扣百分比计算销售价格,最后更新销售数量和销售总额,并返回销售价格。
使用这个类可以很方便地记录商品的销售情况,下面是一个示例:
```python
# 创建一个商品销售对象
product = ProductSales(retail_price=100, wholesale_discount_percent=20, min_wholesale_qty=10)
# 记录销售
sale_price = product.record_sale(5)
print(f"销售数量:{product.sales_qty}")
print(f"销售总额:{product.sales_total}")
sale_price = product.record_sale(15)
print(f"销售数量:{product.sales_qty}")
print(f"销售总额:{product.sales_total}")
```
输出结果为:
```
销售数量:5
销售总额:500
销售数量:20
销售总额:1800.0
```
这个示例中,我们创建了一个商品销售对象,并记录了两次销售。第一次销售数量为5,因为未达到起批数量,所以销售价格为500元。第二次销售数量为15,达到了起批数量,所以销售价格为15*100*(100-20)/100=1200元。最后我们输出了销售数量和销售总额。