(continued from previous pagerow[ int(row[ ]quantity except valueerror as errprocess valueerror only print("invalid datarow is skipped"print('reason :'errcontinue total_price +row[ row[ print("total price % ftotal_pricereturn total_price return total_price def main()total ring_cost('price csv'function call print("total price % totalprint value standard boilerplate main is the starting function if __name__ ='__main__'main(notedo not forget to restart the python shell after changing the code from price import ring_cost ring_cost('price_missing csv'invalid datarow is skipped reason could not convert string to float location of error we can use the 'enumerateto display the location of the error price py import csv def ring_cost(filename)''calculate the total cost ''total_price for all items in the list with open(filename' 'as fopen file in read mode rows csv reader(fheader next(rowsskip line header for row_numrow in enumerate(rowsstart= )start from not tryrow[ float(row[ ]price row[ int(row[ ]quantity except valueerror as errprocess valueerror only print("invalid datarow is skipped"print('row{}reason {}format(row_numerr)continue total_price +row[ row[ print("total price % ftotal_pricereturn total_price return total_price def main()(continues on next page report error