1.getopt最简单粗暴直接有效的方法

#!/usr/bin/python
import  sys
print   sys.argv[0]             #program   name
print   sys.argv[1]             #first  argv

sys.argv 记录命令行参数,但没有sys.argc,可以通过len(sys.argv)获取参数个数;

sys.argv[0]    是命令名;

sys.argv[1:]   是所有参数;

这种方法在面临复杂的情况显得力不从心,比如在有多个可选参数的时候。

 

2.optparse,它功能强大,而且易于使用,可以方便地生成标准的、符合Unix/Posix 规范的命令行说明

这里牵涉到了python的optionParser模块的用法

使用流程

1.必须 import OptionParser 类,创建一个 OptionParser 对象:

from optparse import OptionParser  
[...] 
parser = OptionParser()

2.使用add_option来定义参数

parser.add_option(opt_str, ...,  attr=value, ...)

每个命令行参数就是由参数名字符串和参数属性组成的。如 -f 或者 –file 分别是长短参数名:

parser.add_option("-f", "--file", ...)

3.一旦你已经定义好了所有的命令行参数,调用 parse_args() 来解析程序的命令行:

(options, args) = parser.parse_args()

注: 你也可以传递一个命令行参数列表到 parse_args();否则,默认使用 sys.argv[:1]。

parse_args() 返回的两个值:

① options,它是一个对象(optpars.Values),保存有命令行参数值。只要知道命令行参数名,如 file,就可以访问其对应的值: options.file 。

② args,它是一个由 positional arguments 组成的列表。

Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐