打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
attrs-在类定义中置换__init__,__eq__,__repr__等样板的python库

attrs是一个Python库,它会使得你编写python类时更加轻松。

它的主要目的是帮助您编写简洁而正确的软件,而又不会减慢代码的运行速度。

为此,它为您提供了一个类装饰器,以及一种以声明方式定义该类的属性的方法:

后声明你的属性attrs为您提供:

  • 简要明确地概述了类的属性,

  • 一个漂亮的可读性好的__repr__,

  • 一套完整的比较方法(相等性和排序),

  • 一个初始化器,

  • 以及更多,

无需一次又一次编写沉闷的样板代码,也没有运行时性能损失。

在Python 3.6和更高版本上,您通常甚至可以attr.ib()通过使用类型注释来删除对它们的调用。

这使您能够在代码中使用具有实际类型的实际类,而不会混淆tuples或使其表现混乱 namedtuple。反过来,这鼓励您编写能做一件事的小类。不再因为执行__init__等带来痛苦而违反了单一责任原则。

项目信息

attrs是根据MIT许可发布的,其文档位于Read Docs,GitHub上的代码以及PyPI的最新版本中。它已在Python 2.7、3.5+和PyPy上经过严格测试。

attrs 对于企业

作为Tidelift订阅的一部分提供。

attrsTidelift的维护者以及数以千计的其他软件包正在与Tidelift合作,为您用于构建应用程序的开源软件包提供商业支持和维护。节省时间,降低风险并改善代码运行状况,同时向使用的确切软件包的维护者付款。 

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
十九、Python MetaClass元类详解
浅析 Python 的 metaclass
这可能是Python面向对象编程的最佳实践! 崔庆才 Python大本营 昨天 作者 | 崔庆才 来源 | 进击的Coder(ID:FightingCoder) Python 是支持面向对象的,很多情况下使用面向对象编程会使得代码更加容易扩展,并
python 学习-打开潘多拉的魔盒-元类(metaclass)学习
五分钟理解Python元类(Metaclasses)
python如何实现单例模式
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服