python: sys.argv[0] meaning in official documentation

python: sys.argv[0] meaning in official documentation

No, if you invoke Python with -c to run commands from the command line, your sys.argv[0] will be -c:

C:Python27>python.exe -c import sys; print sys.argv[0]
-c

When Python is invoked as python script.py then sys.argv[0] == script.py. When you invoke python -c import sys; print sys.argv then sys.argv[0] == -c indicating the script body was passed as a string on the command line.

python: sys.argv[0] meaning in official documentation

python -c executes a command passed on the command line, rather than a script from a file. sys.argv[0] will be set to -c.

If you run a script with a -c flag, then yes, sys.argv[1] will be set to -c and sys.argv[0] will be set to the name of the script.

Leave a Reply

Your email address will not be published. Required fields are marked *