Hello all, I am working on a piece of python code that's supposed to help me manage a budget:
1. Read a banking statement 2. Categorize expenses and income by month and by type 3. Print out a report comparing the projected expenses/income with actual numbers. *File characteristics:* Banking statement in a csv file format. contents: 5 columns, 1st column= date, 4 column=expenses date format: mm/dd/yyyy, type: string expenses format: ($0.00), type: string income format: $0.00, type: string *Python Version: 3.5 (64 bit)* IDE:Microsoft Visual Studio Community 2015 Version 14.0.25123.00 Update 2 Python Tools for Visual Studio 2.2.40315.00 Python Tools for Visual Studio provides IntelliSense, projects, templates, Interactive windows, and other support for Python developers. *Problem:* I want to convert expense/income values into a decimal form so I could sum them into appropriate buckets according to the month in which they occur. I am getting the following error message when I run my code: "decimal.InvalidOperation was unhandled by user code Message: [<class 'decimal.ConversionSyntax'>]" *Question: *I tried looking up the meaning of this error, but couldn't find anything on the internet. *Can someone help me understand what's wrong with my code?* Below is my code: ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ import numpy as np import csv import timestring as ts import decimal months= [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12] expenses = {x: decimal.Decimal() for x in months} income = {x: decimal.Decimal() for x in months} exp_cat = [] income_cat = [] files =['export.csv'] with open("budgetfile.csv","wt") as fw: writer = csv.writer(fw) for file in files: with open(file) as csvfile: records = csv.reader(csvfile, quoting=csv.QUOTE_NONE) print("Processing file {}. \n" .format(file)) header = next(records) for row in records: row[4].replace("($","") row[4].replace(")","") row[4].replace('"', '') try: expenses[ts.Date(row[0]).month] += decimal.Decimal(row[4]) except ValueError: pass +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ _______________________________________________ Tutor maillist - Tutor@python.org To unsubscribe or change subscription options: https://mail.python.org/mailman/listinfo/tutor