In this question, we will bake a class. Create a class Cake , with the following instance attributes: • name (a string) • ingreds (a list of strings) • price (a float) The Cake class has also the following methods: • Write a constructor that takes as input a string indicating the cake name, and a list of strings indicating the cake ingredients. (No docstring needed.) The constructor uses these values to initialize the attributes accordingly. Note that each cake should be assigned a random price between $10.00 (inclusive) and $15.00 (exclusive). You may import random . Moreover, a cake must contain at least three or more ingredients. If this is not the case, the constructor should raise a ValueError . For this constructor, do not worry about making a copy of the input array. You can simply copy the reference received as input into the corresponding attribute. 1 • Write a method (including docstring) called __str__ which returns a string containing the name of the cake and its price (rounded to 2 decimal places using round ). For instance, the method might return the following string: 'Carrot Cake $13.75' . Note that this method should not modify the values stored in the attributes of the given object. Outside the class Cake , write the following two functions (including docstring): • A function called create_menu that takes as input a dictionary mapping cake names (strings) to their list of ingredients (lists of strings). The function should use the dictionary to create and return a list of Cake objects. The function should also display the menu, one cake per line.
In this question, we will bake a class. Create a class Cake , with the following instance attributes:
• name (a string)
• ingreds (a list of strings)
• price (a float)
The Cake class has also the following methods:
• Write a constructor that takes as input a string indicating the cake name, and a list of strings
indicating the cake ingredients. (No docstring needed.) The constructor uses these values to
initialize the attributes accordingly. Note that each cake should be assigned a random price between
$10.00 (inclusive) and $15.00 (exclusive). You may import random .
Moreover, a cake must contain at least three or more ingredients. If this is not the case, the
constructor should raise a ValueError . For this constructor, do not worry about making a copy
of the input array. You can simply copy the reference received as input into the corresponding
attribute.
1
• Write a method (including docstring) called __str__ which returns a string containing the name of
the cake and its price (rounded to 2 decimal places using round ). For instance, the method might
return the following string: 'Carrot Cake $13.75' . Note that this method should not modify the
values stored in the attributes of the given object.
Outside the class Cake , write the following two functions (including docstring):
• A function called create_menu that takes as input a dictionary mapping cake names (strings) to
their list of ingredients (lists of strings). The function should use the dictionary to create and return
a list of Cake objects. The function should also display the menu, one cake per line.

Step by step
Solved in 2 steps with 1 images









