Python基于argparse与ConfigParser库进行入参解析与ini parser
一.入参解析库argparse
有时候写Python脚本,需要处理入参[-h][-v][-F]...等情况,如果自己来解析的话,会花费很多时间,而且也容易出问题,好在Python有现成的lib可以使用,就是argparse了,下面我们看看如何使用它。
importargparse defget_version(): return"0.0.1" defcmd_handler(): args=argparse.ArgumentParser() args.add_argument("-v","--version",action='version',version=get_version()) args.add_argument("-o","--output_name",type=str,dest="output_filename",help="OutputFileName") args.add_argument("-S","--SHA_Algorithm",type=str,dest="ENABLE_SHA384_AES256",help="SHAAlgorithm.(SHA256orSHA384,defaultisSHA256)",default='SHA256',choices=['SHA256','SHA384']) args.add_argument("-X","--Old_Argv",type=str,dest="OLD_ARGV",nargs='+',help="Useoldargvconfig") args=args.parse_args() returnargs if__name__=="__main__": args=cmd_handler() printargs.output_filename printargs.OLD_ARGV
1.-h是argparse帮我们加的,所以只需要写好help的信息就可以了,-v有时候会需要调用函数来打印,只需要返回字符串就可以了。
2. add_argument 表示增加需要解释的参数,-o是简写,一般用一个-;--output_name是全称,dest表示把入参给output_filename,后面就可以用args.output_filename来获取入参了。
3. args.parse_args会解析入参,然后返回一个容器,后面就可以访问了。
二. config解析库
很多时候,对于自动化脚本,用入参来配置,会比较麻烦,这意味着要经常改code,改入参。而使用ini来配置程序,会极大方便控制程序的执行,Python中有ConfigParser库可以使用。
importConfigParser ini_config=None defhandler_iniargs(ini_file) globalini_config ini_config=ConfigParser.ConfigParser() ini_config.read(ini_file) output_name=ini_config.get("OUTPUT_CONFIG","filename") is_secure_mode=ini_config.getboolean("SECURE_CONFIG","secure") if__name__=="__main__": handler_iniargs(./config.ini) printini_config
Inifile示例:
[OUTPUT_CONFIG] filename=myfile.txt [SECURE_CONFIG] secure=True
以上就是Python基于argparse与ConfigParser库进行入参解析与iniparser的详细内容,更多关于Python入参解析与iniparser的资料请关注毛票票其它相关文章!