getopt模块:主要处理命令行的参数的
函数: getopt(args, shortopts, longopts = [])
解释: getopt 模块,它的功能是 获取执行命令行时附带的参数命令行附带的参数可以使用 短格式 (-) 和 长格式(--)
# ./check_tomcat.py -u www.baidu.com -p /status -i 8080
# ./check_tomcat.py --url=www.baidu.com --path=/status --port=8080 这两个命令是相同的
代码:
try: options,args = getopt.getopt(sys.argv[1:],"hu:p:i:",["help","url=","path=","port="]) except getopt.GetoptError: sys.exit() for name,value in options: if name in ("-h","--help"): usage() if name in ("-u","--url"): url = value if name in ("-p","--path"): path = value if name in ("-i","--port"): port = value
解释:
options,args = getopt.getopt(sys.argv[1:],"hu:p:i:",["help","url=","path=","port="])
这行语句“hu:p:i:”短格式 -
h 后面没有冒号:表示后面不带参数
u: 和 p:和 i:后面有冒号表示后面需要参数
["help","url=","path=","port="]长格式 --
help后面没有等号=,表示后面不带参数,其他三个有=,表示后面需要参数
返回值 options 是个包含元祖的列表,每个元祖是分析出来的格式信息,比如 ('-i','8080') ;
args 是个列表,包含不属于格式信息的剩余的命令行参数,比如[www.baidu.com,/status,8080] 。