python怎么接收参数
需要一个模块
from sys import argv
当然也可以直接只导入 sys
import sys
然后使用的时候, 用sys.argv也是可行的
import sys
print "the script name is ", sys.argv[0]
for num in range(1, len(sys.argv)):
print "parameter d is s " (num, sys.argv[num])
结果如下:
python test2.py this is a test last_parameter_Success
the script name is test2.py
parameter 1 is this
parameter 2 is is
parameter 3 is a
parameter 4 is test
parameter 5 is last_parameter_Success
python怎么命令接收参数
1. 简单使用
需要使用到sys库里的argv属性。
sys.argv 返回一个参数列表
len(sys.argv) 返回参数个数(其中个参数为文件名)
文件test.py:
import sys
print sys.argv
终端输入:
python test.py arg1 arg2
Output:
['test.py', 'arg1', 'arg2']
我们注意到argv[0]表示的是脚本文件名。
2. 接收选项
上面所述的方法对于接收选项无能为力。为了适应这种需求,我们需要使用getopt包。主要使用getopt.gnu_getopt()函数。函数签名:
getopt.gnu_getopt(args, options[, long_options])
选项分两种:有值选项和无值选项。
参数解释:
options: 短选项,一个选项一个字母,如果选项后面有‘:’,说明其为有值选项。
long_options: 长选项。如果后面有‘=’,说明为有值选项。
文件test.py
import getopt
import sys
opts, args = getopt.gnu_getopt(sys.argv[1:], 'i:o:v', ['input=', 'output_path=', 'version'])
print opts
print args
终端输入:
python test.py arg1 arg2 -i input --output output -v
输出:
[('-i', 'input'), ('--output_path', 'output'), ('-v', '')]
['arg1', 'arg2']