得到论点

时间:2016-12-31 20:03:26

标签: python

当我运行以下行时:python MyApp.py arg1 arg2 我得到了预期的结果:

['MyApp.py', 'arg1', 'arg2']

但是 - 当我运行它时:MyApp.py arg1 arg2 我没有得到论点:

['MyApp.py']

如何在不明确使用python的情况下获取参数?

#!/usr/bin/python
import sys
if __name__ == "__main__": 
    print (sys.argv)

1 个答案:

答案 0 :(得分:-1)

如果您使用的是Linux发行版,请打开终端并输入

which python

您将获得存储默认Python可执行文件的路径。输入此路径作为代码的第一行,即shebang,即#!。例如,我的路径是:/usr/bin/python,然后我可以执行以下操作:

#! /usr/bin/python

import sys
print sys.argv

现在,在您的终端中,转到存储文件的目录。假设文件名是check.py。使用以下命令使其可执行:

chmod +x check.py

现在您可以通过键入:./check.py arg1 arg2来运行您的程序,它将按预期执行。

对于Windows ,您需要确保Windows正在关联正确的Python可执行文件以执行.py文件。即使它正确关联,有时Windows会从命令中删除参数。

我不是一个非常沉重的Windows用户。您可以查看此博客:http://eli.thegreenplace.net/2010/12/14/problem-passing-arguments-to-python-scripts-on-windows/