Python 第一个参数是什么? sys.argv[0] 或 sys.argv[1]

What is Python first argument? sys.argv[0] or sys.argv[1]

根据https://www.tutorialspoint.com/python/python_command_line_arguments.htm

first argument is always script name and it is also being counted in number of arguments.

sys.argv[0]

然而,当我阅读其他教程如

https://www.cyberciti.biz/faq/python-command-line-arguments-argv-example/

它说第一个参数是 sys.argv[1]

#!/usr/bin/python
__author__ = 'nixCraft'
import sys total = len(sys.argv)
cmdargs = str(sys.argv)
print ("The total numbers of args passed to the script: %d " % total)
print ("Args list: %s " % cmdargs)
# Pharsing args one by one
print ("Script name: %s" % str(sys.argv[0]))
print ("First argument: %s" % str(sys.argv[1]))
print ("Second argument: %s" % str(sys.argv[2]))

哪一个是正确的并且应该遵循?

这对于刚开始学习编程和 Python 的人来说尤其令人困惑。

sys.argv[0] 是脚本的名称。从技术上讲,它是 "first" 参数,但通常对您没有用,除非您不知道正在执行的文件的名称。 sys.argv[1],是脚本名称后第一个参数的名称,所以第一个有用的参数。