Reference no: EM132360806
Zoo Class
In this programming assignment, you will create the following:
• An Animal class that stores information about an animal.
• A Zoo class that stores and displays Animal objects.
• A zookeeper program that uses the Animal and Zoo classes.
These elements are described below.
Animal Class
Write a class named Animal with the following attributes and methods. Save this class as Animal.py
Attributes
__animal_type: a hidden attribute used to indicate the animal's type. For example: gecko, walrus, tiger, etc.
__name: a hidden attribute used to indicate the animal's name.
__mood: a hidden attribute used to indicate the animal's mood. For example: happy, hungry, or sleepy.
Methods
__init__: this method should create the three attributes above and assign their default values.
The value of __mood should be set randomly. Generate a random number between 1 and 3. Then:
If the number is 1, the __mood field should be set to a value of "happy".
If the number is 2, the __mood field should be set to a value of "hungry".
If the number is 3, the __mood field should be set to a value of "sleepy".
get_animal_type: this method should return the value of the __animal_type field.
get_name: this method should return the value of the __name field.
check_mood: this method should return the value of the __mood field.
Zoo Class
Write a class named Zoo with the following attributes and methods. Save this class as Zoo.py
Attributes
__animals: a list used to store Animal objects.
Methods
__init__: use this method to create an empty list for __animals.
add_animal: this method should receive an Animal object and append it to the __animals list.
show_animals: this method will print information about each of the Animal objects within __animals. If no Animals have been added to the
list, it should print out a message saying that there are no Animals.
Zookeeper Program
Once you have written the Animal and Zoo classes, create another program called zookeeper.py. This program will use Animal.py and Zoo.py as modules.
In zookeeper.py, create a Zoo object and print a menu with three options: Add Animal, Show Animals, and Exit.
Add Animal: choosing this option should prompt the user to enter the type and name of an Animal. Use that input to create an Animal object and use the Zoo object's add_animal method to store the animal.
Show Animals: choosing this option should trigger the Zoo object's show_animals method.
Exit: this should exit the program.
If exit is not selected, the program should loop and display the options again.
Error Checking
Invalid input should not cause the program to crash. Make sure to handle errors properly.
Testing
Run the program you write and verify that the information entered matches the information displayed and that the input prompts and output utilize the format specification provided.