zl程序教程

您现在的位置是:首页 >  后端

当前栏目

Python终端工具Rich

Python工具 终端
2023-06-13 09:14:13 时间

Rich 是一个 Python 库,可以为你在终端中提供富文本和漂亮、精美的格式。

1.Rich兼容性

Rich 适用于 Linux,OSX 和 Windows。可与新的 Windows 终端一起使用,Windows 的经典终端仅限 8 种颜色。

Rich 还可以与 Jupyter NoteBook 一起使用,而无需其他配置。

2.Rich 安装说明

请选择以下任一种方式输入命令安装依赖:

1.Windows 环境 打开 Cmd (开始-运行-CMD)。

2.MacOS 环境 打开 Terminal (command+空格输入Terminal)。

3.如果你用的是 VSCode编辑器 或 Pycharm,可以直接使用界面下方的Terminal.

pip install rich   #  建议加上豆瓣源,让安装过程更加顺畅
pip install rich  -i http://pypi.doubanio.com/simple  --trusted-host pypi.doubanio.com

3.自定义 Console 控制台输出

想要对 Rich 终端内容进行更多的自定义设置,你需要导入并构造一个控制台对象:


from rich.console import Console

console = Console()

console.print("Hello", "World!", style="bold red")

终端输入结果:

Terminal输出结果

4.表格

Rich 包含多种边框,样式,单元格对齐等格式设置的选项。下面是一个简单的示例:

def test_rich():

    console = Console()
    console.print("Hello", "World!")

    table = Table(show_header=True, header_style="bold magenta")
    table.add_column("Date", style="dim", width=12)
    table.add_column("Title")
    table.add_column("Production Budget", justify="right")
    table.add_column("Box Office", justify="right")
    table.add_row(
        "Dev 20, 2019", "Star Wars: The Rise of Skywalker", "$275,000,000",
        "$375,126,118"
    )
    table.add_row(
        "May 25, 2018",
        "[red]Solo[/red]: A Star Wars Story",
        "$275,000,000",
        "$393,151,347",
    )
    table.add_row(
        "Dec 15, 2017",
        "Star Wars Ep. VIII: The Last Jedi",
        "$262,000,000",
        "[bold]$1,332,539,889[/bold]",
    )

    console.print(table)


if __name__ == '__main__':
    test_rich()

请注意,控制台标记的呈现方式与 print() 和 log() 相同。实际上,由 Rich 渲染的任何内容都可以添加到标题/行(甚至其他表格)中。

Table 类很聪明,可以调整列的大小以适合终端的可用宽度,并能根据需要做文本环绕的处理。下面是相同的示例,输出与比上表小的终端上:

table效果

除了以上的控制台美化,table输出,还有诸如traceback,markdown。在此不一一列举了。