在Windows 7中,如果python(2.7.10)脚本已经与Python解释器相关联,并且扩展名已在PATHEXT中注册(windows )列表中,那么当你揭开序幕脚本,可以简单地键入:启用CLI运行的Python脚本不带命令行参数
MyPythonScript
代替传统:
python MyPythonScript.py
这是伟大的 - 但不再是(出现的话)采取命令在线参数。例如,请考虑以下两个采用命令行参数的脚本示例。首先,传统的方式:
>>>> python echo_input.py --help
usage: echo_input.py [-h] [-s SIMPLE_VALUE] [-c] [-t] [-f] [-a COLLECTION]
[-A] [-B] [--version]
optional arguments:
-h, --help show this help message and exit
-s SIMPLE_VALUE Store a simple value
-c Store a constant value
-t Set a switch to true
-f Set a switch to false
-a COLLECTION Add repeated values to a list
-A Add different values to list
-B Add different values to list
--version show program's version number and exit
工作得很好,但如果它被调用的替代方式:
echo_input --help
simple_value = None
constant_value = None
boolean_switch = False
collection = []
const_collection = []
这似乎不再识别的命令行参数。 FYI:如果运行它瓦特/出任何参数上面的脚本(默认),打印出的5号线,如下图所示的对比:
>python echo_input.py
simple_value = None
constant_value = None
boolean_switch = False
collection = []
const_collection = []
所以看起来好像它已经失去了它的承担能力命令行参数,例如简单的帮助标志。
我被困在这个问题的答案和解决办法,将不胜感激任何建议或经验。
预先感谢您的宝贵时间... :-)灵感
来源:
Registering Python Scripts to run on Windows:
这不是一个问题。这是'sys.argv'中的问题。 – hpaulj