可扩展pprint后续版本-python3版本

pretty-py3的Python项目详细描述


pretty-py3

python高级漂亮打印机。这台漂亮的打印机旨在 替换不允许开发人员使用的旧的pprintpython模块 提供他们自己漂亮的打印回拨。

这个模块基于ruby的Tanaka Akira库。

这是由Mark Grandi和其他人转化为python3的。

示例用法

要直接打印对象的表示,请使用pprint

from pretty import pprint
pprint(complex_object)

要获取输出字符串,请使用pretty

from pretty import pretty
string = pretty(complex_object)

延伸

漂亮的库允许开发人员为他们的 自己的东西。这个过程很简单。你要做的就是 向对象添加一个__pretty__方法,并调用 漂亮的打印机通过:

class MyObject(object):

    def __pretty__(self, p, cycle):
        ...

这里是列表的__pretty__方法的示例实现 子类:

class MyList(list):

    def __pretty__(self, p, cycle):
        if cycle:
            p.text('MyList(...)')
        else:
            with p.group(8, 'MyList([', '])'):
                for idx, item in enumerate(self):
                    if idx:
                        p.text(',')
                        p.breakable()
                    p.pretty(item)

如果检测到一个循环,cycle参数是True。你已经到 对此做出反应,否则结果就是一个无限循环。p.text()只需添加 不中断文本到输出,p.breakable()或者添加空白 或者在这里休息。如果你给它一个参数,它被用来代替 默认空间。p.prettypretty print使用prettyprint打印另一个对象 方法

group函数的第一个参数指定额外的缩进 下一行。第二个和第三个参数是 将在组之前和之后打印的结束字符串。 在本例中,下一项将不是 断开(如果项目足够短)或与 有MyList支撑的开口。

更改日志

0.2.4

0.2.3

0.2.2

  • 完成移植到python3

版权所有

copyright 2007作者:Armin Ronacher。

copyright 2014作者:mark grandi-python 3端口

licenseBSD许可证。

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

推荐PyPI第三方库


热门话题
socketJava加密聊天客户端未通过关联   java保存JFileChooser的状态   java如何让代码等待GUI完成?   java可序列化和接口:Parcelable在写入可序列化对象时遇到IOException   java Jersey客户端将覆盖ROBOTS响应   java空指针异常&如何克服   java如何使用JAXR设置字符集?   JavaSpring自定义转换器被覆盖   java将泛型类型的值设置为DTO字段   使用netty的java音频流服务器   java滚动条添加到面板时不显示在滚动窗格中   java windows通过IIS Url重写单点登录tomcat   Web应用程序的java容器管理安全性   java使用mybatis将POJO项数组传递到存储过程?