1、Getopt模块是一个专门处理命令行参数的模块,用于获取命令行选项和参数。命令行选项使程序参数更加灵活,支持短选项模式(-)和长选项模式(-)。
2、该模块提供了分析命令行参数的两种方法和一种异常处理方法。
实例
importsys importgetopt defmain(argv): input_file="" output_file="" #"hi:o:":短格式分析串,h后面没有冒号,说明后面没有参数;i和o后面有冒号,表示后面有参数 #["help","input_file=","output_file="]:长格式分析串列表,help后面没有等号,表示后面没有参数;input_file和output_file后面有冒号,表示后面有参数 #返回值包括`opts`和`args`,opts是以元组为元素的列表,每个元组的形式为:(选项,附加参数),如:('-i','test.png'); #args是列表,元素是不含'的元素;-'或'--'的参数 opts,args=getopt.getopt(argv[1:],"hi:o:",["help","input_file=","output_file="]) foropt,arginopts: ifoptin("-h","--help"): print('script_2.py-i<input_file>-o<output_file>') print('or:test_arg.py--input_file=<input_file>--output_file=<output_file>') sys.exit() elifoptin("-i","--input_file"): input_file=arg elifoptin("-o","--output_file"): output_file=arg print('输入文件为',input_file) print('输出文件为',output_file) #不包括'打印;-'或'--'的参数 foriinrange(0,len(args)): print('不含'-'或'--'参数%s为:%s'%(i+1,args[i])) if__name__=="__main__": main(sys.argv)
以上是python中getopt模块的介绍,希望对大家有所帮助。更多Python学习指导:python基础教程