python argparse 和configparse模块

argparse

定义:argparse 是python标准库里用来处理命令行参数的库

命令行参数:

两种,位置参数和选项参数

    位置参数,程序根据该参数出现的位置来确定 如:ls root,root就是位置参数

    选项参数,程序已经提前定义好的参数, 如:ls -l,-l就是一个选项参数


使用方法:

parser=argparse.ArgumentParse()#创建一个解析对象

parser.add_argument() #添加命令行参数和选项

parser.parse_args() #解析



configparse 

#https://docs.python.org/3/library/configparser.html

这个模块提供了ConfigParser类,实现了一种基本的配置语言。类似Windows INI文件中的结构

可以像处理字典一样处理他

区段中的键大小写不敏感,section的名字大小写敏感

保存的都是字符串,没有数据类型,需要自己转换

提供了getboolean()函数返回bool值,也提供了getint和getfloot

可以像使用字典那样,用get(关键字)来获取字段值

可以指定get()的fallback设置回退值,用于向后兼容,但是默认值优先于回退值,即使指定回退值,也返回的是默认值

可以用DEFAULT为每一个section设置公共参数

值的插值:

interpolation 设置为BasicInterpolation ,home_dir:/a 会将my_dir:%(home_dir)s/aaa  解释为/a/aaa

                        如果设置为none ,不替代,直接解释为字符串本身%(home_dir)s/aaa 

                        设置为ExtendedInterpolation,可以引用不同section的字段,${section:key}    

在configParser类中默认的是BasicInterpolation

可以使用parser[‘section’] [‘option’]等符号解析一个ConfigParser对象

可以使用parser.section(),获取所有的section,可以使用parser.items(section,option)和获取一个对象

不是复制,是代理映射,修改即修改

默认值不能删除,parser.clear()删除所有sections,但是默认值重现,,parser.popitem()从来不返回默认值,试图删除默认值会出现keyvalue错误








你可能感兴趣的:(python argparse 和configparse模块)