一.入参解析库 argparse
有时候写Python脚本,需要处理入参[-h][-v][-F]...等情况,如果自己来解析的话,会花费很多时间,而且也容易出问题,好在Python有现成的lib可以使用,就是argparse了,下面我们看看如何使用它。
import argparse
def get_version():
return "0.0.1"
def cmd_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="Output File Name")
args.add_argument("-S", "--SHA_Algorithm", type = str, dest = "ENABLE_SHA384_AES256", help = "SHA Algorithm. (SHA256 or SHA384, default is SHA256)", default='SHA256', choices=['SHA256', 'SHA384'])
args.add_argument("-X", "--Old_Argv", type = str, dest = "OLD_ARGV", nargs='+', help = "Use old argv config")
args = args.parse_args()
return args
if __name__ == "__main__":
args = cmd_handler()
print args.output_filename
print args.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库可以使用。
import ConfigParser
ini_config = None
def handler_iniargs(ini_file)
global ini_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)
print ini_config
Inifile示例:
[OUTPUT_CONFIG]
filename=myfile.txt
[SECURE_CONFIG]
secure=True
以上就是Python基于argparse与ConfigParser库进行入参解析与ini parser的详细内容,更多关于Python 入参解析与ini parser的资料请关注脚本之家其它相关文章!
您可能感兴趣的文章:- Python ArgumentParse的subparser用法说明
- Python3中configparser模块读写ini文件并解析配置的用法详解
- Python3.5内置模块之shelve模块、xml模块、configparser模块、hashlib、hmac模块用法分析
- Python HTML解析模块HTMLParser用法分析【爬虫工具】
- Python中optparser库用法实例详解
- python命令行参数解析OptionParser类用法实例
- python中HTMLParser模块知识点总结
- 关于pycharm 切换 python3.9 报错 ‘HTMLParser‘ object has no attribute ‘unescape‘ 的问题
- Python如何使用ConfigParser读取配置文件
- Python ConfigParser模块的使用示例
- Python Parser的用法