用于创建更好的repr()和str()的帮助程序。
rr.prett的Python项目详细描述
这个模块公开了一些函数和一个类装饰器,使为自定义类编写__repr__()和__str__()的任务更容易。它将显示一个格式良好的(attr, val)对列表,每个对都有可定制的分隔符和格式。
让我们看一个例子:
fromrrimportprettyclassfoo(object):__str__=pretty.str__repr__=pretty.repr__info__=pretty.info(["x","y","z"])def__init__(self,x,y,z):self.x=xself.y=yself.z=zf=foo(1,2,3)printrepr(f)# see for yourself :)printstr(f)
现在,让我们做同样的事情,只是这次我们将使用klass()类装饰符:
fromrrimportpretty@pretty.klassclassfoo(object):def__init__(self,x,y,z):self.x=xself.y=yself.z=zf=foo(1,2,3)printrepr(f)# see for yourself :)printstr(f)
我们甚至忽略了属性列表,pretty.info()(这就是pretty.klass()在幕后使用的)为我们构建它。就这样!您可以免费获得漂亮的__repr__()和__str__()方法。
安装
>;来自pypi(“稳定”版本):
pip install rr.pretty
>;来自Git回购:
git clone https://github.com/2xR/rr.pretty.git pip install ./rr.pretty