I just got into arguments in Python and I find it strange the way the arguments system works in Python (I’m not sure about other languages). For example:
from sys import argv
arg1, arg2, arg3 = argv
print "First argument: ", arg1
print "Second argument: ", arg2
print "Third argument: ", arg3
When I run this in command line with the arguments that follow:
python example.py First Second
It gives the output:
First argument: example.py
Second argument: First
Third argument: Second
Does this mean that python starts counting from zero? Or is there some different or some more reasons it does that. It’s odd, but interesting.
Yes, Python uses zero-based indexing as you surmised (and as many other programming languages also do).
sys.argvis a list of strings.sys.argv[0]will contain the name of the script, and subsequent entries in this list of strings will contain command line arguments provided to the script.I was going to provide an example, but what you have in your post is as good as I could come up with.
Finally, as @GregHewgill points out in a helpful comment below, the Python docs provide more information on this as well.