小编典典

sys.argv [1],IndexError:列表索引超出范围

python

我在以下Python代码部分遇到问题:

# Open/Create the output file
with open(sys.argv[1] + '/Concatenated.csv', 'w+') as outfile:

    try:
        with open(sys.argv[1] + '/MatrixHeader.csv') as headerfile:
            for line in headerfile:
                outfile.write(line + '\n')
    except:
        print 'No Header File'

具体的错误如下:

Traceback (most recent call last): File "ConcatenateFiles.py", line 12, in <module> with open(sys.argv[1] + 'Concatenated.csv', 'w+') as outfile:
IndexError: list index out of range

我已经进行了一些研究,似乎sys.argv在运行脚本时,可能在命令行中需要一个参数,但是我不确定要添加什么或可能是什么问题!我也搜索了该站点,但是我发现的所有解决方案都没有评论,并且/或者没有像我一样包含开放功能。

任何帮助是极大的赞赏。


阅读 290

收藏
2020-12-20

共1个答案

小编典典

sys.argv 表示执行脚本所使用的命令行选项。

sys.argv[0]是您正在运行的脚本的名称。所有其他选项都包含在中sys.argv[1:]

您正在尝试打开一个使用sys.argv[1](第一个参数)作为目录的文件。

尝试运行以下内容:

python ConcatenateFiles.py /tmp
2020-12-20