Question
This script reads in class data from a file and creates a dictionary. It then prints the data from the dictionary. The script has the
This script reads in class data from a file and creates a dictionary. It then prints the data from the dictionary. The script has the following functions
class_tuple_create
print_classes
class_tuple_create
This function has the following header
def class_tuple_create(filename):
The function reads in a file with four fields of data about a class. The fields are
Course ID Room number Instructor Start time
The function must print an error message if the file cannot be opened for any reason. The function should read in each line of the file and split it into a list of 4 elements. It should add the information in the line into a dictionary, where the key is the course number and the value is a tuple consisting of the room number, the instructor and the start time. The function should return this dictionary when it has read all the lines in the file.
print_classes
This function has the following header
def print_classes(class_info):
It should print the following table header
ID Room Instr Start
Then it should print out the data for each class in alphabetical order by Class ID.
Test Code
The script must contain the following test code at the bottom of the file
class_information = class_tuple_create('xxxxx') class_information = class_tuple_create('courses.txt') print_classes(class_information)
Suggestions
Write this script in stages, testing your script at each step
Create a file with the hashbang line, the test code and each function. The body of the function should be the Python statement pass which does nothing but it stops syntax errors
Remove the pass statement in class_tuple_create and replace it with code that opens a file for reading. If the file cannot be opened for reading, the code should print an error message and not do any further processing of the file.
Using a for loop print each line of the file.
Split the line into a list and print the list.
Define the variable course_id and set its value to the first element of the list. Print the course_id.
Create the variable class_data and set its value to the tuple consisting of the remaining fields in the list. Print course_id and class_data.
Create an empty dictionary at the top of the function. With each line of the file create an entry for the class where the key is the course ID and the value is the tuple. Outside the loop but still inside the function, print this dictionary.
Remove all print statements from class_tuple_create. Return the dictionary created by this function. Remove the pass statement from print_classes and replace it with a statement that prints the parameter.
Using a for loop, print the class IDs in sorted alphabetical order.
Use the class ID to get the tuple with class data. Print the class ID and tuple for each class.
Print the class ID and each element of the tuple with a tab in between.
Print the labels for each column and a line of dashes underneath it.
Output
The output should look something like this
Error: Unable to open xxxxx ID Room Instr Start ----------------------------------- CM241 1411 Lee 13:00 CS101 3004 Haynes 8:00 CS102 4501 Smith 9:00 CS103 6755 Rich 10:00 NT110 1244 Burke 11:00
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