文章目录RichPython 终端输出格式化库56k StarRichPython 终端输出格式化库56k StarRich 是一个 Python 库专门用来在终端里输出带颜色、带样式的文本还能渲染表格、进度条、Markdown、代码高亮、错误追踪等。项目在 GitHub 上拿到了 56k 的 Star。Rich 的 API 设计得很简单基本只要 import 然后调用就行。比如想给终端输出加颜色fromrichimportprintprint(Hello, [bold magenta]World[/bold magenta]!)运行后终端会直接显示带颜色的文字不需要额外配置。支持的功能Rich 内置了多种可渲染的组件覆盖了终端输出的常见场景Console核心对象控制输出格式、颜色、样式支持类似 BBCode 的标记语法Tables用 Unicode 字符画表格列宽自动适配终端宽度Progress Bars无闪烁进度条支持多任务并行显示Markdown直接在终端渲染 Markdown 内容Syntax Highlighting基于 Pygments 的代码高亮支持行号Tracebacks美化 Python 错误追踪信息比默认的更易读Log带时间戳和调用位置的日志输出自动格式化 Python 数据结构Tree树形结构渲染适合展示文件目录Columns等宽分栏显示类似 ls 命令的效果Status加载动画适合等待耗时操作的场景Inspect生成任意 Python 对象的详细报告Emoji在输出中直接用:smiley:这样的语法插入表情安装pipinstallrich安装完可以跑一下自带的演示python-mrich基本用法最简单的方式是直接替换 printfromrichimportprintprint(Hello, [bold magenta]World[/bold magenta]!,:vampire:,locals())如果需要更精细的控制用 Console 对象fromrich.consoleimportConsole consoleConsole()console.print(Hello,World!,stylebold red)Console 的 print 方法会自动换行适配终端宽度。还可以用标记语法做行内样式console.print(Where there is a [bold cyan]Will[/bold cyan] there [u]is[/u] a [i]way[/i].)表格fromrich.consoleimportConsolefromrich.tableimportTable consoleConsole()tableTable(show_headerTrue,header_stylebold magenta)table.add_column(Date,styledim,width12)table.add_column(Title)table.add_column(Box Office,justifyright)table.add_row(Dec 20, 2019,Star Wars: The Rise of Skywalker,$375,126,118)console.print(table)表格会自动调整列宽终端缩小时文字会自动换行。进度条fromrich.progressimporttrackforstepintrack(range(100)):do_step(step)内置的列可以显示百分比、文件大小、传输速度、剩余时间等信息。代码高亮fromrich.consoleimportConsolefromrich.syntaximportSyntax my_codedef hello():\n print(Hello, World!)syntaxSyntax(my_code,python,thememonokai,line_numbersTrue)consoleConsole()console.print(syntax)错误追踪Rich 可以接管 Python 的异常处理把 traceback 渲染成更易读的格式。设置一次之后所有未捕获的异常都会自动美化。REPL 支持在 Python 交互式环境中也可以使用fromrichimportpretty pretty.install()之后所有数据结构都会自动格式化输出。兼容性Rich 支持 Linux、macOS 和 Windows。Windows 需要用新版终端才能支持真彩色和 emoji经典终端只支持 16 色。最低要求 Python 3.8。Jupyter Notebook 里也能直接用不需要额外配置。Rich 还有一个命令行工具 Rich CLI可以直接在终端高亮代码、渲染 Markdown、显示 CSV 表格。另外还有姐妹项目 Textual可以用 Python 在终端里构建完整的用户界面。Notebook 里也能直接用不需要额外配置。Rich 还有一个命令行工具 Rich CLI可以直接在终端高亮代码、渲染 Markdown、显示 CSV 表格。另外还有姐妹项目 Textual可以用 Python 在终端里构建完整的用户界面。
Rich:Python 终端输出格式化库,56k Star
文章目录RichPython 终端输出格式化库56k StarRichPython 终端输出格式化库56k StarRich 是一个 Python 库专门用来在终端里输出带颜色、带样式的文本还能渲染表格、进度条、Markdown、代码高亮、错误追踪等。项目在 GitHub 上拿到了 56k 的 Star。Rich 的 API 设计得很简单基本只要 import 然后调用就行。比如想给终端输出加颜色fromrichimportprintprint(Hello, [bold magenta]World[/bold magenta]!)运行后终端会直接显示带颜色的文字不需要额外配置。支持的功能Rich 内置了多种可渲染的组件覆盖了终端输出的常见场景Console核心对象控制输出格式、颜色、样式支持类似 BBCode 的标记语法Tables用 Unicode 字符画表格列宽自动适配终端宽度Progress Bars无闪烁进度条支持多任务并行显示Markdown直接在终端渲染 Markdown 内容Syntax Highlighting基于 Pygments 的代码高亮支持行号Tracebacks美化 Python 错误追踪信息比默认的更易读Log带时间戳和调用位置的日志输出自动格式化 Python 数据结构Tree树形结构渲染适合展示文件目录Columns等宽分栏显示类似 ls 命令的效果Status加载动画适合等待耗时操作的场景Inspect生成任意 Python 对象的详细报告Emoji在输出中直接用:smiley:这样的语法插入表情安装pipinstallrich安装完可以跑一下自带的演示python-mrich基本用法最简单的方式是直接替换 printfromrichimportprintprint(Hello, [bold magenta]World[/bold magenta]!,:vampire:,locals())如果需要更精细的控制用 Console 对象fromrich.consoleimportConsole consoleConsole()console.print(Hello,World!,stylebold red)Console 的 print 方法会自动换行适配终端宽度。还可以用标记语法做行内样式console.print(Where there is a [bold cyan]Will[/bold cyan] there [u]is[/u] a [i]way[/i].)表格fromrich.consoleimportConsolefromrich.tableimportTable consoleConsole()tableTable(show_headerTrue,header_stylebold magenta)table.add_column(Date,styledim,width12)table.add_column(Title)table.add_column(Box Office,justifyright)table.add_row(Dec 20, 2019,Star Wars: The Rise of Skywalker,$375,126,118)console.print(table)表格会自动调整列宽终端缩小时文字会自动换行。进度条fromrich.progressimporttrackforstepintrack(range(100)):do_step(step)内置的列可以显示百分比、文件大小、传输速度、剩余时间等信息。代码高亮fromrich.consoleimportConsolefromrich.syntaximportSyntax my_codedef hello():\n print(Hello, World!)syntaxSyntax(my_code,python,thememonokai,line_numbersTrue)consoleConsole()console.print(syntax)错误追踪Rich 可以接管 Python 的异常处理把 traceback 渲染成更易读的格式。设置一次之后所有未捕获的异常都会自动美化。REPL 支持在 Python 交互式环境中也可以使用fromrichimportpretty pretty.install()之后所有数据结构都会自动格式化输出。兼容性Rich 支持 Linux、macOS 和 Windows。Windows 需要用新版终端才能支持真彩色和 emoji经典终端只支持 16 色。最低要求 Python 3.8。Jupyter Notebook 里也能直接用不需要额外配置。Rich 还有一个命令行工具 Rich CLI可以直接在终端高亮代码、渲染 Markdown、显示 CSV 表格。另外还有姐妹项目 Textual可以用 Python 在终端里构建完整的用户界面。Notebook 里也能直接用不需要额外配置。Rich 还有一个命令行工具 Rich CLI可以直接在终端高亮代码、渲染 Markdown、显示 CSV 表格。另外还有姐妹项目 Textual可以用 Python 在终端里构建完整的用户界面。