Question
Code the program below: The program must contain and use a main function that is called inside of: If __name__ == __main__: Create the abstract
Code the program below: The program must contain and use a main function that is called inside of: If __name__ == __main__: Create the abstract base class Vehicle with the following attributes Variables Methods Manufacturer Model Wheels TypeOfVehicle Seats printDetails() - ABC checkInfo(**kwargs) The methods with ABC next to them should be abstracted and overloaded in the child class Create three child classes: car, truck , Motorcycle with these variables and methods: Variables Methods ManufacturingNumber printDetails() 1. In the __init__ methods of each child class, print out what kind of vehicle was created (0.5pts) Ex: If a Car is created, print A car was created. 2. The printDetails() method should print out the TypeOfVehicle, Model, Manufacturer, and ManufacturingNumber (0.5pts) Ex. Manufacturer: Toyota Model: al3s Wheels: 4 Type of Vehicle: Car Seats: 4 Manufacturing Number: 1 3. The checkInfo() method should allow a user to input data with a keyword related to each variable and check if the entered data matches the variable in the object, prinIng the variable name along with True or False (0.5pts) Ex: object.checkInfo(Seats=5) should print Seats + True or False depending on whether self.seats is 5 4. In your main function create the following: (1.5pts) 1. A list that contains five manufacturers . 2. A dict that contains the three types of vehicles as keys, each with a list of three different models. 3. A dict that contains the three types of vehicles as keys, each with a list of the number of seats that could be in each vehicle type (Car could have 2 to 5, Truck could have 2 to 4, Motorcycle could have 1 to 2) 4. Create a dict called totals that contains the three types of vehicles as keys, each set to equal 0 Ex. manufacturers = ['Toyota', 'GM', 'Ford', 'Jeep', 'Audi'] models = {'Car':['X11','i3','XFCE'], 'Truck':["Linux", "Unix", "FreeBSD"], 'Motorcycle':["Triforce", "Mushroom", "Morphball"]} seats = {'Car':[2,3,4,5], 'Truck':[2,3,4], 'Motorcycle':[1,2]} total = {'Car':0, 'Truck':0, 'Motorcycle':0} With the above list and dicts, create a blank list and populate it with 5 instances of Cars, Trucks, and Motorcycles that all contain randomly selected data, increasing the respective totals key by 1 each time. The ManufacturingNumber should be equal to the current totals key. Select one instance from the list and test its printDetails() and checkInfo(). At the end of the loop print out the total amount of each vehicle created. Output should be similar to these:
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started