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

前端 未结 3 1956
醉话见心
醉话见心 2020-12-19 12:21

Quoting from docs.python.org:

\"sys.argv The list of command line arguments passed to a Python script. argv[0] is the script name (it is op

相关标签:
3条回答
  • 2020-12-19 12:44

    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
    
    0 讨论(0)
  • 2020-12-19 12:47

    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.

    0 讨论(0)
  • 2020-12-19 12:54

    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.

    0 讨论(0)
提交回复
热议问题