On 02/11/2014 11:01 AM, luke.gee...@gmail.com wrote:
when using python script.py 2 \* 2 i get Traceback (most recent call last): File "math2.py", line 5, in <module> sign = int(sys.argv[2]) ValueError: invalid literal for int() with base 10: '*'

Stop trying to guess what is going on. Print out sys.argv, and *see* what values are there. Then read the error message.

You wrote your script expecting sys.argv[2] to contain an int, but in fact (according to the error) it contains a '*' -- which can't be converted to an integer obviously. Your error is in running the script incorrectly, *OR* in your understanding of how the command line arguments get placed in sys.argv. In either case you best bet is to examine sys.argv by printing it (or examining it within a debugger) and *see* what values it contains. Then adjust your script (or the running of it) accordingly.

These are very beginner level debugging suggestions. If you develop the skill to read and understand the error messages, and the skill to print (or otherwise examine) the values your program is dealing with, you progress will by 100's of times faster then this slow wait for someone to respond to on this list.

Gary Herron
--
https://mail.python.org/mailman/listinfo/python-list

Reply via email to