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合作,为您用于构建应用程序的开源软件包提供商业支持和维护。节省时间,降低风险并改善代码运行状况,同时向使用的确切软件包的维护者付款。
赞 (0)