商品销售(封装)

请编写程序实现

定义商品类Goods,该类具有两个私有属性:商品名称__name、商品价格__price,并包含下面的方法:

  • 构造方法:初始化属性两个属性,并对商品价格进行判断,如果价格小于0,则输出价格必须大于0!,且设置价格为0;

  • 为属性__name,添加getName()setName()方法,分别获取和设置商品名称,名称要求必须是字符串,如果不是,则输出提示名称必须是字符串!

  • 同样为属性__price,添加getPrice()setPrice()方法,设置商品价格,价格要求必须大于等于0,如果小于0,设置价格属性为0,同时输出提示价格必须大于0!

  • 设置方法sell(),输出商品名称和价格,格式如下:

华为荣耀V30 售价 3899 元
函数调用
good1 = Goods("华为荣耀V30",3899)
good2 = Goods("iPhone11",-7899)
good1.sell()
good2.sell()
示例输出
价格必须大于0!
华为荣耀V30 售价 3899 元
iPhone11 售价 0 元
# 请在此处编写代码
class Goods:
    __name=None
    __price=None
    def __init__(self,name,price):
        self.__name=name
        if price<0:
            print("价格必须大于0!")
            self.__price=0
        else:
            self.__price=price
    def getName(self):
        return self.__name
    def setName(self,name):
        if isinstance(name,str):
            self.__name=name
        else:
            print("名称必须是字符串!")
    def getPrice(self):
        return self.__price
    def setPrice(self,price):
        if price<0:
            self.__price=0
            print("价格必须大于0!")
        else:
            self.__price=price
    def sell(self):
        print(f"{self.__name} 售价{self.__price}元")


# 测试代码
good1 = Goods("华为荣耀V30",3899)
good2 = Goods("iPhone11",-7899)
good1.sell()
good2.sell()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值