练习3|学习笔记

简介: 快速学习练习3

开发者学堂课程【Python 入门 2020年版练习3】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/639/detail/10412


练习3

 

内容简介:

一、展示所有宠物信息

二、宠物狗类信息

三、宠物猫类信息

四、把宠物数据加到宠物店中

 

一、展示所有宠物信息

题目:宠物店类 PetShop

属性:店名,店中的宠物【使用列表存储宠物】

方法:展示所有宠物的信息

方法一:

class PetShop(object):

def _init_(self, shop_name,pet_list=None) :

self.shop_name = shop_name

if pet_list is None:

pet_list = []

self.pet_list = pet_list#传数据的时候可以不给参数,只传名字,没有数据默认为空列表

def show_pets(self):

pass

ps = PetShop('萌宠",[ ])

方法二:

class PetShop(object) :

def _init_(self, shop_name) :

self.shop_name = shop_name

self.pet_list =[ ] #数据默认为空格,不接入参数

def show_pets(self):

pass

ps = PetShop(萌宠)

两种方法的区别是方法一可以传数据也可以不传数据,而方法二是不能传数据的只能输入店名。

 

二、宠物狗类信息

宠物狗类 PetDog

属性:昵称,性别,年龄,品种

方法:叫,拆家,吃饭

class PetDog(object) :

def _init_(self, name,gender, age, breed) :

self.name = name

self.gender = gender

self.age = age

self.breed = breed

def bark(self):

print(self.name +'正在汪汪汪')

def build_home( self):

print(self.name + '正在拆家')

def eat(self):

print(self.name + '正在啃骨头’)

 

三、宠物猫类信息

宠物猫类 PetCat

属性:昵称,性别,年龄,品种,眼睛的颜色

方法:叫,撒娇,吃饭

注意:狗的叫声是汪汪瞭猫的叫声是啪

狗吃的是骨头,猫吃的是鱼

c1ass PetCat(object):

def ___init__(self, name,gender,age,breed,eyes_color):

self.name = name

self.gender = gender

self.age = age

self.breed = breed

self.eyes_color = eyes_color

def bark(self):

print(self.name + '正在啪瞄瞄")

def sajiao(self);

print(self.name +'正在撒娇")

def eat(self):

print(self.name +‘正在吃鱼")

def _str__(self): #调用父类的方法(后面会添加父类)

x= super(Petcat,self)._str_( )

x +=“,眼睛颜色:”.format(self.eyes_color)

return x

也可以在代码中加入以下父类内容,以用来丰富代码,方便后续加入数据

class Pet(object) :

def_init_(self, name,gender, age,breed):

self.name = name

self.gender = gender

self.age = age

self.breed = breed

def bark( self):

print(self.name +'正在叫')

def eat(self):

print(self.name + '正在吃东西")

def __str_(self):

return '姓名:{},性别{,年龄:{,品种:{}' .format(self.name,self.gender, self.age, self.breed) 

 

四、把宠物数据加到宠物店中

宠物数据:

dog1 = PetDog('大黄","female', 3,"哈士奇')

dog2 = petDog('二黄', 'male', 2,'萨摩耶"')

cat1 = petCat( 'tom', 'male',2,'英短","blue " )

cat2 = Petcat("包子', "female', 3,‘加菲猫', "black ")

修改列表存储宠物店信息

class Petshop(object) :

def__init__(self,shop_name,pet_list=None):

self.shop_name = shop_name

if pet_list is None:

pet_list = [ ] #没有数据加入就直接是空列表

self.pet_list = pet_list

def show_pets(self):I

if len(self.pet_list) == :

print( '本店还没有宠物')

return #没有宠物直接打印“本店还没有宠物并结束”

print( '有个宠物,它们是:' .format(self.shop_name,len(self.pet_list)))

for pet in self.pet_list:

print(pet) #有宠物则会展示相关信息

相关文章
|
开发者 Python
|
C++ CDN
2013-7-11学习笔记
宏定义参数没有类型判断,宏定义在编译的时候就已经计算好了,所以效率比一般函数要高。 #define mul(a,b) ((a)*(b))   预处理指令 条件判断预处理指令,如果条件成立则预编译 #if 条件1 .
602 0
|
弹性计算 缓存 Linux
使用 syncthing | 学习笔记
快速学习使用 syncthing,介绍了使用 syncthing 系统机制, 以及在实际应用过程中如何使用。
使用 syncthing | 学习笔记
|
算法 测试技术
murmurhash3 学习笔记
## 背景 由于项目中有报文排重需求,所以会将报文字符串作为分布式锁key。 考虑到报文不定长并且散列性不太好,如其作为锁key,特别是当key值过大时,使用redis进行读写都会有相对的性能下降。 ``` 参考文献里测试对比: 长度为10:写平均耗时0.053ms,读0.040ms 长度为20000:写平均耗时0.352ms,读0.084ms ``` 一种简单的方案是
11719 0
|
Java 开发者
接口标准|学习笔记
快速学习接口标准
119 0
接口标准|学习笔记
|
XML JavaScript 前端开发
学习笔记(2011年5月到9月)
1、 table 每行 鼠标悬停和移出的样式变化: 二号楼 2、由1,我们可以对gridview行 鼠标悬停和移出的样式变化: protected void gvBuildList_RowCreated(object sender, GridViewRowEventArgs e) { if (e.
745 0

热门文章

最新文章