用于简单对象缓存和工厂的python库。

unicum的Python项目详细描述


https://img.shields.io/codeship/84595e40-4619-0135-2581-6682ffd1d80e/master.svghttps://readthedocs.org/projects/unicum/badge

unicum由实现各种工厂模式的多个对象实现组成。 所有类型都合并到on typevisibleobject中,并且每种类型都提供位和片。

可见的obj通过persistentobject 只有简单类型或简单类型容器的值。

这些值通过fatoryobject转换为从工厂获取的更复杂的结构。

或者,也可以将数据范围用于类似于数据框的内容键入r, 具有列和行名称以及每个列值的公共类型的表。

从LinkedObject继承可以在运行时交换或更新属性

示例用法

使用singletonobject

>>>fromunicumimportSingletonObject>>>classMySingleton(SingletonObject):pass>>>s1=MySingleton()>>>s2=MySingleton()>>>s1=s2True

使用factoryobject

>>>fromunicumimportFactoryObject>>>classCurrency(FactoryObject):__factory=dict()>>>classEUR(Currency):pass>>>classUSD(Currency):pass>>>EUR().register()# registers USD() instance with class name 'EUR'>>>eur=Currency('EUR')# picks instance with key 'EUR' from currency cache>>>eur==EUR()# picks instance with key given by class name 'EUR' from currency cache, too.True>>>eur2=eur.__class__('EUR')# picks instance with key 'EUR' from currency cache>>>eur==eur2True>>>usd=USD().register()# registers USD() instance with class name 'USD'>>>usd.register('usd')# registers usd with name 'usd'>>>usd==USD()True>>>eur==eur.__class__('USD')False>>>usd==eur.__class__('USD')True>>>usd==Currency('usd')True

使用LinkedObject

>>>fromunicumimportLinkedObject

开发版本

最新的开发版本可以直接从github安装:

$ pip install --upgrade git+https://github.com/pbrisk/unicum.git

贡献

IssuesPull Requests总是受欢迎的。

许可证

根据apache软件许可证提供了代码和文档(请参见LICENSE)。

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

推荐PyPI第三方库


热门话题
Java算法:如何对实体进行分组   C语言中的Java X509EncodedKeySpec#   如何修复java lambda筛选器(缺少返回语句)与future   java有没有办法在Swing中以亚像素精度绘制线条?   HV000030:找不到约束“javax”的验证器。验证。限制。大小为“验证类型”的java。util。可选<java。lang.String>'   CQL中语句的java分页状态   在开发时使用applet查看器的java对象相关applet   java如何从Oracle获取时区ID而不是时区偏移量   java递增变量   java JavaFX InvalizationListener或ChangeListener   java使用多个数据包将大量XMP数据插入jpg?   java允许删除请求   java为什么与类同名的方法不需要返回类型?   java数据转换错误转换   java一旦布尔值为真,如何关闭JFrame?   如何将数据写入两个java。木卫一。一次输出流对象?   mysql如何使用java在SQL中划分两列?   java使用Saxon/XQuery设置URI或目录解析器   mysql java。sql。SQLException:无法将值“20200816 17:33:21.690”从第18列转换为时间戳