python13-再也不是单身狗!

python

python中,万物皆为对象——不管是数字、字符、字符串,还是列表、字典和我们今天要说的自定义对象,都是你心心念念的对象。
正因如此,学了python——尤其是这一课——你就再也不是单身狗了!(真的有逻辑吗?!!)
让我们来定义加菲猫这个对象
怎么做呢?
先问自己几个问题:
1、加菲猫是什么?
一只叫加菲的猫。
肥胖,橙色,酷爱意大利面。
** 2、猫是什么?**
一种“喵喵”叫哺乳动物。
平均寿命14岁,爱吃鱼,爱喝牛奶。
3、这跟python有毛关系?
别急啊,正要写呢。

先定义一个猫

class Cat:
   # 初始状态,self就是对象自己
   def __init__(self, name, size, color):
       self.age = 0
       self.name = name
       self.size = size
       self.color = color

   # 长大一岁,超过14岁就gg了
   def grow(self):
       self.age += 1
       if self.age >= 14:
           print("Die!")
           self.describe()
       else:
           print("%d!" % self.age)

     # 猫叫(春)
     def meow(self):
         print("meow meow")

    #吃东西(猫会挑食的)
     def feed(self, food):
         if food == "milk" or food == "fish":
             print("Eat!")
         elif self.name == "Garfield" and food == "pasta":
             print("Eat!")
        else:
            print("Throw away!") 
            self.meow()

    # 描述状态
    def describe(self):
       print("%s is %d now. It's a %s %s cat." % (self.name, self.age, self.size, self.color))

接下来生成(初始化)加菲猫(这个对象(实例))。

Garfield = Cat("Garfield", "fat", "orange")

让加菲猫成长:

from time import sleep
for i in range(0, 14):
   if Garfield.age >= 14: 
      pass   
   else:
       Garfield.feed("milk")
       Garfield.meow()
       Garfield.feed("pasta")
       Garfield.meow()
       Garfield.feed("fish")
       Garfield.meow()
       Garfield.feed("water")
       Garfield.grow()
       print("")
       sleep(1)

有任何问题请回复提出。然后欢迎关注微信公众号格物致愚

格物致愚

你可能感兴趣的:(python13-再也不是单身狗!)