模块介绍
所有UNIX程序甚至那些具有图形用户界面(Graphical User Interface,GUI)的程序,都能接受和处理命令行选项。对于某些程序,这是与其他程序或用户进行交互的主要手段。具有可靠的复杂命令行参数处理机制,会使得您的应用程序更好、更好用。
Getopt是一个专门设计来减轻命令行处理负担的库函数,主要用来分析命令行参数,不仅python语言中有getopt,C语言中也有getopt。下面主要来介绍python中getopt的使用方法。
模块说明
导入模块:import getopt
使用语法:getopt.getopt(args, options[, long_options])
参数说明:options是单字符,long_options表示字符串
返回结果:是一个list,每个list的项为(选项,值)的元组对
具体实例:#ping -c 12 -6 -s 1024 –help –size 1024
处理结果:
getopt.getopt(sys.argv[1:], ”c:s:6”, [“size=”,”help”])
[('-c', '12'), ('-6', ''), ('-s', '1024'), (“—help”,””), (“--size”,”1024”)]
c:表示是一个短选项,前面用’-‘表示,紧随着c之后的元素与c组成一个元组;
6:表示是一个短选项,前面用’-‘表示,与6组成元组的元素是空字符;
help:表示是一个长选项,前面用’--‘表示,与空字符组成一个元组;
size:表示是一个长选项,前面用 ’--‘表示,与 1024组成一个元组;
模块使用
options = ["server", "listen=", "server_name=", "include="]
try:
opts,var = getopt.getopt(argvlist[1:], "", options)
for opt,val in opts:
…
except getopt.GetoptError, err:
…
参考资料
http://baike.baidu.com/view/2406693.htm
http://www.ibm.com/developerworks/cn/aix/library/au-unix-getopt.html