47 lines
1.8 KiB
Python
47 lines
1.8 KiB
Python
# Exercise 9-6 Ice Cream Stand
|
|
# Learning Objective: Create a class that inherits the Restaurant class. Add an attribute and create a method. Create instance to make sure it works properly.
|
|
|
|
class Restaurant:
|
|
def __init__(self, name, cuisine_type):
|
|
"""Initialize variables name and cuisine_type, define functions to describe and to open restaurant..."""
|
|
|
|
self.name = name
|
|
self.cuisine_type = cuisine_type
|
|
self.number_served = 0
|
|
|
|
def describe_restaurant(self):
|
|
"""Describe the restaurant"""
|
|
print(f"The restaurant's name is {self.name} and the cuisine served here is {self.cuisine_type}")
|
|
|
|
def open_restaurant(self):
|
|
"""Simulate it being opened"""
|
|
print(f"{self.name} is now open for business.")
|
|
|
|
def get_number_served(self):
|
|
"""Retrieve current number of customers that have been served."""
|
|
print(f'{self.number_served} customers have been served at {self.name} so far.')
|
|
|
|
def set_number_served(self, num):
|
|
""" Enable manual modification to number of customers served"""
|
|
self.number_served = num
|
|
|
|
def increment_number_served(self):
|
|
"""Incremental change to number of customers served"""
|
|
self.number_served += 1
|
|
|
|
class IceCreamStand(Restaurant):
|
|
def __init__(self, name, cuisine_type):
|
|
"""Initialize parent class attributes, then add attributes specific to Ice Crean Stand"""
|
|
super().__init__(name, cuisine_type)
|
|
self.flavors = []
|
|
|
|
def print_flavors(self):
|
|
"""Prints out the list of flavors provided"""
|
|
print(f"The flavors available here are {self.flavors}.")
|
|
|
|
|
|
carphel = IceCreamStand("carphel", "ice cream")
|
|
|
|
carphel.flavors = ['chocolate, vanilla, strawberry, mocha, peach']
|
|
|
|
carphel.print_flavors() |