尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

Rich:让 Python 终端输出变得丰富好看

Rich:让 Python 终端输出变得丰富好看
📅 发布时间:2026/7/1 9:31:17

文章目录

  • Rich:让 Python 终端输出变得丰富好看

Rich:让 Python 终端输出变得丰富好看

Rich 是一个 Python 库,用于在终端中生成富文本和美观的格式化输出。它在 GitHub 上收获了 56,692 个 Star。

这个库可以让终端输出变得丰富多彩。通过 Rich API,你可以轻松地为终端输出添加颜色和样式。

Rich 可以渲染漂亮的表格、进度条、Markdown、语法高亮的源代码、错误追踪信息等,这些都是开箱即用的。

主要功能

Rich 提供了多种内置组件,可以用来创建优雅的输出,帮助你调试代码。

表格

Rich 可以用 Unicode 字符渲染灵活的表格。支持多种格式化选项,包括边框样式、单元格对齐等。

表格会自动调整列宽以适应终端宽度,必要时会自动换行。

进度条

Rich 可以渲染多个无闪烁的进度条,用于跟踪长时间运行的任务。

只需将任何序列包装在track函数中并遍历结果即可。进度条支持显示百分比、文件大小、传输速度和剩余时间等信息。

日志

Console 对象的log()方法与print()接口类似,但会额外显示当前时间以及调用所在的文件和行号。

默认情况下,Rich 会对 Python 结构和 repr 字符串进行语法高亮。如果记录的是集合(如字典或列表),Rich 会将其漂亮地打印出来以适应可用空间。

Markdown 渲染

Rich 可以渲染 Markdown,并能合理地将格式转换到终端显示。

使用时只需导入 Markdown 类,用包含 Markdown 代码的字符串构造它,然后打印到控制台即可。

语法高亮

Rich 使用 pygments 库实现语法高亮。使用方式与渲染 Markdown 类似,构造一个 Syntax 对象然后打印到控制台。

错误追踪

Rich 可以渲染美观的错误追踪信息,比标准 Python 追踪信息更易读,显示的代码也更多。可以将 Rich 设置为默认的追踪处理器,这样所有未捕获的异常都会由 Rich 渲染。

树形结构

Rich 可以渲染带引导线的树形结构。树适合显示文件结构或其他层级数据。

树的标签可以是简单文本,也可以是 Rich 能渲染的任何其他内容。

列布局

Rich 可以将内容整齐地渲染成列,支持等宽或最优宽度。

兼容性

Rich 支持 Linux、macOS 和 Windows。True color 和 emoji 在新版 Windows Terminal 中可用,经典终端仅支持 16 色。Rich 需要 Python 3.8 或更高版本。

Rich 可以在 Jupyter notebook 中使用,无需额外配置。

安装使用

安装很简单,通过 pip 命令即可:

pip install rich

安装后可以运行以下命令测试 Rich 输出:

python -m rich

快速开始

要在应用中添加富文本输出,可以导入 rich print 方法,它与 Python 内置的 print 函数签名相同:

from rich import print print("Hello, [bold magenta]World[/bold magenta]!")

如果需要更多控制,可以使用 Console 对象:

from rich.console import Console console = Console() console.print("Hello", "World!", style="bold red")

Rich 的 Console 对象支持类似 BBCode 的标记语法,可以实现更精细的样式控制。

相关项目

Rich 还有一个姊妹项目 Textual,可以用来在终端中构建复杂的用户界面。

另外还有 Rich CLI,这是一个基于 Rich 的命令行应用,可以直接在命令行中高亮代码、渲染 Markdown、在表格中显示 CSV 等。

目 Textual,可以用来在终端中构建复杂的用户界面。

另外还有 Rich CLI,这是一个基于 Rich 的命令行应用,可以直接在命令行中高亮代码、渲染 Markdown、在表格中显示 CSV 等。

相关新闻

  • 打破田间“信号孤岛”,乾元通多链路聚合路由筑基智慧农业新底座
  • 别再只用SE了!手把手教你用PyTorch实现更轻量的ECA注意力模块(附完整代码)
  • 掌握Verilog-2001中的Function:语法、应用与设计实践

最新新闻

  • 国内高校学生论文季必用的AI论文写作工具有哪些?
  • 超快软恢复整流二极管:原理、选型与应用实战指南
  • AVR单片机USART与SPI寄存器级编程:从原理到实战
  • ChatGPT客服机器人响应延迟超2.8秒?用LLM-Ops流水线压测法,3小时定位GPU显存泄漏根因(附Prometheus+LangChain追踪脚本)
  • DALL-E 3 提示词黄金公式曝光:23个经A/B测试验证的高转化结构模板(含电商/教育/自媒体实战案例)
  • Microchip嵌入式开发资源导航:从数据手册到实战调试全攻略

日新闻

  • 2026年6月公司网站搭建最新热门渠道测评:四大低成本/零代码平台对比+避坑
  • 【Linux】Linux arm 编译QT程序,出现expected “}“报错
  • 【MATLAB例程】四基站二维AOA定位与距离辅助增强对比仿真。基于角度观测和测距修正的固定目标平面定位精度分析

周新闻

  • Windows字体自定义终极方案:No!! MeiryoUI完全指南
  • Deepin Boot Maker:告别命令行,3分钟制作Linux启动盘的智能解决方案
  • Plain Craft Launcher 2:重新定义你的Minecraft游戏体验

月新闻

  • 2026年6月公司网站搭建最新热门渠道测评:四大低成本/零代码平台对比+避坑
  • 【Linux】Linux arm 编译QT程序,出现expected “}“报错
  • 【MATLAB例程】四基站二维AOA定位与距离辅助增强对比仿真。基于角度观测和测距修正的固定目标平面定位精度分析

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号