使用 sys.argv 通过终端输入

Using sys.argv for input through Terminal

我写了一个 Python 脚本,我现在正试图通过命令行进入 运行。它由一个函数组成,该函数接受一个强制参数和一些可选参数。

def main(input_folder, iterations = 1000, probability_cutoff = - 40 , threshold = 10): ...

现在我正尝试通过命令行使其可执行,如下所示:

if __name__ == "__main__": main(sys.argv[1])

只要我只输入一个参数,这个方法就很好用;但我不知道如何接受 sys.argv 作为列表提供的附加可选输入。

我正在 Mac 上使用 Python 2.7。非常感谢任何帮助!

我总是使用 argparse,因为它可以很好地处理错误,将字符串转换为整数或打开文件,并清楚地记录选项。但是,这应该可以满足您的要求:

if __name__ == "__main__":
    main(*sys.argv[1:])