将值应用于可选参数

apply-defaults的Python项目详细描述


应用默认值

对函数应用默认值。

使配置更容易应用程序设置来自配置文件 你的代码干净,而且只需要很少的努力

不再丑陋了。

pip install apply_defaults

应用配置

此装饰器应用来自configparser对象的选项。

fromapply_defaultsimportapply_configfromconfigparserimportConfigParserconfig=ConfigParser()config.read_dict({"general":{"option":True}})# alteratively read a file@apply_config(config)deffunc(option:bool=False)->bool:returnoption

option参数从配置中获取值。

>>>func()True

通过传递值覆盖配置

>>>func(option=False)'False'

如果该选项不在配置中,则参数的默认值 使用列表

>>>config.remove_option("general","option")>>>func()False

注意:configparser的选项是字符串。函数签名中的类型提示 允许apply_config decorator将选项强制转换为所需的类型。 或者你自己铸造价值观。

应用自己

此修饰符应用绑定对象的属性。

fromapply_defaultsimportapply_selfclassMyObject:def__init__(self):self.option=True@apply_selfdeffunc(self,option=False):returnvalue

类型提示允许decorator将config选项转换为所需的类型。 否则,config选项每次都是一个字符串。

参数从绑定对象中获取值,即self.foo

>>>obj=MyObject()>>>obj.func()True

通过传递值重写。

>>>obj.func(option=False)False

如果属性不在绑定对象中,则 使用参数列表。

>>>delobj.option>>>obj.func()False

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
javascript节点js require()和Rhino Shell load()之间的区别是什么?   While循环中的java If语句   java GXT如何在XTemplate中显示treeobject?   如何将黑白图像加载到二进制文件中?   java ORMLite不知道如何存储班级航班。扫描仪。modelFX。机场航空公司的AirlineFx。使用另一个类或自定义持久器   java组织。阿帕奇。德比。客户是SqlException JSP和JSTL查询   spring如何将clob数据分配给java变量   java从上的表获取数据(Spring)   javaphp使用Exec执行带有用户定义参数的Jar文件   java jsonschema2pojo:引用相同类型的对象   使用原语从Scala调用Java vararg方法   java ClassNotFoundException:ClientBuilder Jersey 2.25.1 Tomcat 9.0   Android(Java)cr_BindingManager:无法调用determinedVisibility()从未看到pid的连接:   Java使用LocalTime类比较没有日期的时间   Java如何初始化对象的参数?