Question: PYTHON Modify the program you wrote for Chapter 6 Exercise 6 so it handles the following exceptions: It should handle IOError exceptions that are raised
PYTHON
Modify the program you wrote for Chapter 6 Exercise 6 so it handles the following exceptions: It should handle IOError exceptions that are raised when the file is opened and data is read from it by printing "Trouble opening file. Try again." and not executing any more of the code. It should handle any ValueError exceptions that are raised when the items that are read from the file are converted to a number by printing "File must have only numbers. Try again." and not executing any more of the code.
My code is as follows:
#try except try:
#opening the file
read_file = open('numbers.txt', 'r')
#Store the numbers in the variable file_numbers.
file_numbers = read_file.read()
#close the file
read_file.close()
#Split the number of files in list_values. list_values = file_numbers.split()
#how many numbers are there
list_length = len(list_values) try:
#loop it up
for i in range(list_length):
list_values[i] = float(list_values[i])
#Add up all the numbers, put into list_sum
List_sum = sum(list_values)
#heres how we average it
Average_value = (List_sum)/list_length
print(Average_value) except ValueError: print( "File must have only numbers. Try again." )
#handles IOError exceptions
except IOError:
#Display statement
print("Trouble opening file. Try again.")y:
#opening the file
read_file = open('numbers.txt', 'r')
#Store the numbers in the variable file_numbers.
file_numbers = read_file.read()
#close the file
read_file.close()
#Split the number of files in list_values. list_values = file_numbers.split()
#how many numbers are there
list_length = len(list_values) try:
#loop it up
for i in range(list_length):
list_values[i] = float(list_values[i])
#Add up all the numbers, put into list_sum
List_sum = sum(list_values)
#heres how we average it
Average_value = (List_sum)/list_length
print(Average_value) except ValueError: print( "File must have only numbers. Try again." )
#handles IOError exceptions
except IOError:
#Display statement
print("Trouble opening file. Try again.")
This code will not print the average. Unsure why. The code functioned fine before the try,except lines were added in.
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
