3

我刚接触 Python 中的参数,我发现参数系统在 Python 中的工作方式很奇怪(我不确定其他语言)。例如:

from sys import argv

arg1, arg2, arg3 = argv

print "First argument: ", arg1
print "Second argument: ", arg2
print "Third argument: ", arg3

当我在命令行中使用以下参数运行它时:

python example.py First Second

它给出了输出:

First argument: example.py
Second argument: First
Third argument: Second

这是否意味着python从零开始计数?或者是否有一些不同或更多的原因。这很奇怪,但很有趣。

4

2 回答 2

9

是的,正如您所猜测的那样,Python 使用从零开始的索引(和许多其他编程语言一样)。

sys.argv是一个字符串列表。

sys.argv[0]将包含脚本的名称,并且此字符串列表中的后续条目将包含提供给脚本的命令行参数。

我打算提供一个例子,但你在你的帖子中的内容是我能想到的。

最后,正如@GregHewgill 在下面的有用评论中指出的那样,Python 文档也提供了更多相关信息。

于 2012-08-13T00:39:25.417 回答
4

自 C 以来,参数从 0 开始计数argv,并且可能在此之前。参数 0 是可执行文件/脚本名称,它后面的所有其他参数都从 1 开始。

于 2012-08-13T00:40:21.687 回答