I am trying to round a float to two decimals, but I am getting the following error:
Traceback (most recent call last): File "<pyshell#23>", line 1, in <module> PaintingProject() File "C:/Python27/Homework/Labs/Lab 03_5.py", line 42, in PaintingProject print 'That will cost you $%f.' %(round(5.6523),2) TypeError: not all arguments converted during string formatting Basically, I am writing a program to ask a user how many square feet they need to paint. I then calculate how many cans of paint they need and will also show the total purchase price. I've tried this two ways, and the first way I am semi-successful meaning that my output is rounding but it displays a number of zero's after the number rounds. The second way, I am getting the error mentioned above. What am I doing wrong? How can I do this better? (note, for the sake of brevity, I only show the code in question and not the whole program). total = PRICE_PER_CAN * cans + (PRICE_PER_CAN * cans * TAX) total = round(total,2) print 'For %d square feet, you\'ll need %d cans of paint.' %(square_feet, cans) print 'That will cost you $%f.' %(total) total = PRICE_PER_CAN * cans + (PRICE_PER_CAN * cans * TAX) print 'For %d square feet, you\'ll need %d cans of paint.' %(square_feet, cans) print 'That will cost you $%f.' %(round(total),2)
_______________________________________________ Tutor maillist - Tutor@python.org To unsubscribe or change subscription options: http://mail.python.org/mailman/listinfo/tutor