您的位置:首页 > 编程语言 > Python开发

python利用面向对象的思想实现功能代码练习

2019-03-12 20:56 549 查看

1.利用面向对象的思想,实现以下功能:
(1)创建一个猫(Cat)类,其包含属性:名字(name)、品种(type)、
价格(price)、颜色(color),并定义适当构造、析构的方法
(2)创建一个老鼠(Mouse)类,其包含属性:名字(name)、颜色(color),
并定义适当的构造、析构方法
(3)在Cat类中定义一个属性cat_num,该属性存储的值为当前已实例化的猫的个数
#(4)在Cat类中定义一个捉老鼠的方法(要求传入Mouse的实例)
打印内容为:‘xx猫在捕捉yy老鼠’(其中xx,yy分别代表猫和老鼠的名字)
(5)在Cat类中定义一个吃粮方法,打印内容为‘ xx猫正在吃粮’(其中xx代表名字)
(6)在Cat类中定义一个卖萌方法打印的内容为‘xx颜色的猫正在卖萌’(其中xx代表颜色)
(7)在Cat类中定义一个打印猫信息的方法,打印的内容为‘猫猫信息 名字:xx,品种:xx,价格:xx,颜色:xx’
(8)按以下要求测试Cat类和Mouse类的所有方法:
① 实例化三个Cat类的对象,其属性分别为(cat1,黑猫,6500,黑色) 、(cat2,黄猫,3000,黄色)和(cat3,波斯猫,2000,蓝色);
实例化一个Mouse的对象,其属性为(mouse1,白色
② 测试Cat的所有方法是否工作正常 ③ 通过Cat类的属性cat_num输出当前猫类下实例的数量

# 创建一个猫(Cat)类,其包含属性:名字(name)、品种(type)、
# 价格(price)、颜色(color),并定义适当构造、析构的方法
class Cat():
# 在Cat类中定义一个属性cat_num,该属性存储的值为当前已实例化的猫的个数
cat_num = 0

def __init__(self,name,type,price,color):
self.name = name
self.type = type
self.price = price
self.color = color
Cat.cat_num += 1

# 在Cat类中定义一个捉老鼠的方法(要求传入Mouse的实例)
def catch(self,mouse):
print(self.name,'猫捉',mouse.name,'老鼠')

# 在Cat类中定义一个吃粮方法,打印内容为‘ xx猫正在吃粮’(其中xx代表名字)
def eat(self):
print(self.name,'正在吃猫粮')

# 在Cat类中定义一个卖萌方法打印的内容为‘xx颜色的猫正在卖萌’(其中xx代表颜色)
def show(self):
print(self.color,'颜色的猫在卖萌')

# 在Cat类中定义一个打印猫信息的方法,打印的内容为‘猫猫信息  名字:xx,品种:xx,价格:xx,颜色:xx’
def messaage(self):
print('猫的信息:',self.name,self.color,self.type,self.price)
# 创建一个老鼠(Mouse)类,其包含属性:名字(name)、颜色(color),
# 并定义适当的构造、析构方法
class Mouse():

def __init__(self,name,color):
self.name = name
self.color = color

# ① 实例化三个Cat类的对象,其属性分别为(cat1,黑猫,6500,黑色) 、(cat2,黄猫,3000,黄色)和(cat3,波斯猫,2000,蓝色);
# 实例化一个Mouse的对象,其属性为(mouse1,白色
cat1 = Cat('cat1','黑猫',6500,'黑色')
# 实例化一个Mouse的对象,其属性为(mouse1,白色)
mouse1 = Mouse('mouse1','白色')
# 测试Cat的所有方法是否工作正常
print('实例化第',Cat.cat_num, '只猫')
cat1.catch(mouse1)
cat1.eat()
cat1.messaage()
cat1.show()
cat2 = Cat('cat2','黄猫',3000,'黄色')
print('实例化第',Cat.cat_num, '只猫')
cat2.catch(mouse1)
cat2.eat()
cat2.messaage()
cat2.show()
cat3 = Cat('cat3','波斯猫',2000,'蓝色')
print('实例化第',Cat.cat_num, '只猫')
cat3.catch(mouse1)
cat3.eat()
cat3.messaage()
cat3.show()
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐