initial creation
This commit is contained in:
@@ -0,0 +1,47 @@
|
||||
#!/usr/bin/env python
|
||||
class Animal():
|
||||
count = 0 # <1>
|
||||
|
||||
def __init__(self, species, name, sound):
|
||||
self._species = species
|
||||
self._name = name
|
||||
self._sound = sound
|
||||
Animal.count += 1
|
||||
|
||||
@property
|
||||
def species(self):
|
||||
return self._species
|
||||
|
||||
@classmethod
|
||||
def kill(cls):
|
||||
cls.count -= 1
|
||||
|
||||
@property
|
||||
def name(self):
|
||||
return self._name
|
||||
|
||||
def make_sound(self):
|
||||
print(self._sound)
|
||||
|
||||
@classmethod
|
||||
def remove(cls):
|
||||
cls.count -= 1 # <2>
|
||||
|
||||
@classmethod
|
||||
def zoo_size(cls): # <3>
|
||||
return cls.count
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
leo = Animal("African lion", "Leo", "Roarrrrrrr")
|
||||
garfield = Animal("cat", "Garfield", "Meowwwww")
|
||||
felix = Animal("cat", "Felix", "Meowwwww")
|
||||
|
||||
print(leo.name, "is a", leo.species, "--", end=' ')
|
||||
leo.make_sound()
|
||||
|
||||
print(garfield.name, "is a", garfield.species, "--", end=' ')
|
||||
garfield.make_sound()
|
||||
|
||||
print(felix.name, "is a", felix.species, "--", end=' ')
|
||||
felix.make_sound()
|
||||
Reference in New Issue
Block a user