Op 21-08-18 om 13:16 schreef Jacob Braig:
I am just starting out coding and decided on python. I am confused with
something I go shooting a lot so i wanted to make some stupid easy
calculator for ammo and slowly build the program up when I understand
python better but the code I have now keeps popping up an error and I don't
understand where i went wrong a little help please.
Here is the code like I said very simple stuff.

"""
  This is a simple program for ammo calculation.
  Created by Jacob
"""
AMMO = " This is how much ammo remains for .40 pistol %s. "

print "Program has started."

ammopistol = raw_input("Enter total ammo before use. ")
ammopused = raw_input("Enter total ammo used. ")
ammopleft = ammopistol - ammopused

print AMMO % (ammopistol, ammopused,) ammoleft

I am having issues with " ammopleft = ammopistol - ammopused "  any idea
where I have gone wrong?
Always include the full traceback (error message).

The problem is that raw_input() returns a string, so you are doing something like "10" - "2" instead of 10 - 2 for example. The error message should have told you so:
    TypeError: unsupported operand type(s) for -: 'str' and 'str'

The solution is to cast these inputs to integers, either directly during input:
    ammopistol = int(raw_input("Enter total ammo before use. "))
    ammopused = int(raw_input("Enter total ammo used. "))
Or during calculation:
    ammopleft = int(ammopistol) - int(ammopused)

Next issue will be your print statement. See the following website on how to properly format strings: https://pyformat.info/

_______________________________________________
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
https://mail.python.org/mailman/listinfo/tutor

_______________________________________________
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
https://mail.python.org/mailman/listinfo/tutor

Reply via email to