136
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)
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
评论(0)