Rich:Python 终端输出格式化库,56k Star

发布时间:2026/7/12 10:42:22

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 在终端里构建完整的用户界面。

相关新闻

小米手表表盘设计终极指南:用Mi-Create零代码打造个性化表盘

小米手表表盘设计终极指南:用Mi-Create零代码打造个性化表盘

2026/7/11 20:05:39

小米手表表盘设计终极指南:用Mi-Create零代码打造个性化表盘 【免费下载链接】Mi-Create Unofficial watchface creator for Xiaomi wearables ~2021 and above 项目地址: https://gitcode.com/gh_mirrors/mi/Mi-Create 每天早上醒来,你看着手腕上…

学习day9

学习day9

2026/7/11 18:24:59

&&就是与运算符,也是并且的意思,&&是一个双目操作符,使用的方式是a&&b,&&两边的表达式都是真的时候,整个表达式才为真,只要有一个是假,则整个表达式为假。 #i…

Snowflake原生数据管道实战:Stage+Pipe+Stream+Task四步落地

Snowflake原生数据管道实战:Stage+Pipe+Stream+Task四步落地

2026/7/11 23:51:40

1. 这不是“又一篇Snowflake教程”,而是一条能走通的数据管道实操路径如果你刚接触Snowflake,手头有一份CSV订单数据、一个需要每日更新的销售看板、还有一堆散落在Excel和数据库里的客户信息,却卡在“怎么让它们自动跑起来”这一步——那你不…

基于MA12070与STM32的高保真低功耗音频系统设计

基于MA12070与STM32的高保真低功耗音频系统设计

2026/7/12 10:34:31

1. 项目概述:基于MA12070与STM32L152RE的高保真音频系统设计 在嵌入式音频应用领域,如何平衡音质表现与系统功耗一直是工程师面临的挑战。本次项目采用英飞凌MA12070 D类音频放大器与STM32L152RE低功耗MCU的组合方案,打造了一套供电电压范围宽…

NBTExplorer终极指南:5步掌握Minecraft数据编辑的艺术 [特殊字符]

NBTExplorer终极指南:5步掌握Minecraft数据编辑的艺术 [特殊字符]

2026/7/12 10:34:31

NBTExplorer终极指南:5步掌握Minecraft数据编辑的艺术 🎮 【免费下载链接】NBTExplorer A graphical NBT editor for all Minecraft NBT data sources 项目地址: https://gitcode.com/gh_mirrors/nb/NBTExplorer 你是否曾想过像编辑普通文件一样修…

SSM框架+MySQL 5.7 智慧养老平台源码解析:从E-R图到16个功能模块实现

SSM框架+MySQL 5.7 智慧养老平台源码解析:从E-R图到16个功能模块实现

2026/7/12 10:34:31

SSM框架MySQL 5.7智慧养老平台架构设计与核心模块实现1. 智慧养老平台技术架构解析在当今数字化养老服务的浪潮中,基于SSM(SpringSpring MVCMyBatis)框架与MySQL 5.7的智慧养老平台已成为行业主流技术方案。这种架构组合完美平衡了性能、可维…

高精度24位ADC与dsPIC30F在工业测量中的应用

高精度24位ADC与dsPIC30F在工业测量中的应用

2026/7/12 10:34:31

1. 项目背景与核心需求 在工业测量和嵌入式系统开发中,将模拟信号精确转换为数字表示是一个基础但至关重要的环节。ADS122U04作为TI公司推出的24位Δ-Σ型ADC,与Microchip的dsPIC30F4013数字信号控制器组合,能够实现微伏级精度的信号采集。这…

Keil MDK 5 调试 STM32F4:解决 JTAG 链错误的 3 种引脚复用配置方案

Keil MDK 5 调试 STM32F4:解决 JTAG 链错误的 3 种引脚复用配置方案

2026/7/12 10:34:31

Keil MDK 5 调试 STM32F4:解决 JTAG 链错误的 3 种引脚复用配置方案 调试接口失效是嵌入式开发中最令人头疼的问题之一。当你满心期待地连接调试器,准备单步跟踪代码时,Keil MDK 突然弹出"JTAG Device Chain Error"的红色警告框&am…

Matlab非线性拟合高效实践:从nlinfit原理到可信参数估计

Matlab非线性拟合高效实践:从nlinfit原理到可信参数估计

2026/7/12 10:24:30

1. 项目概述:为什么非线性拟合不是“换个函数就行”的事 在工程建模、生物动力学、材料性能分析、传感器标定这些实际场景里,我见过太多人把非线性拟合当成“把nlinfit函数往数据上一扔,调调初值就完事”的黑箱操作。结果呢?拟合残…

Unity游戏文本翻译架构深度解析:XUnity.AutoTranslator的技术实现与工程实践

Unity游戏文本翻译架构深度解析:XUnity.AutoTranslator的技术实现与工程实践

2026/7/12 0:03:42

Unity游戏文本翻译架构深度解析:XUnity.AutoTranslator的技术实现与工程实践 【免费下载链接】XUnity.AutoTranslator 项目地址: https://gitcode.com/gh_mirrors/xu/XUnity.AutoTranslator XUnity.AutoTranslator作为Unity游戏社区中最成熟的文本翻译解决方…

openEuler Raspberry Pi Kernel设备驱动开发指南:为树莓派硬件添加支持

openEuler Raspberry Pi Kernel设备驱动开发指南:为树莓派硬件添加支持

2026/7/12 0:03:42

openEuler Raspberry Pi Kernel设备驱动开发指南:为树莓派硬件添加支持 【免费下载链接】raspberrypi-kernel It provides openEuler kernel source for Raspberry Pi 项目地址: https://gitcode.com/openeuler/raspberrypi-kernel 前往项目官网免费下载&…

openEuler系统集成测试实战:基于smoke-test套件的环境验证技巧

openEuler系统集成测试实战:基于smoke-test套件的环境验证技巧

2026/7/12 0:03:42

openEuler系统集成测试实战:基于smoke-test套件的环境验证技巧 【免费下载链接】integration-test The repo contains test suits for system integration test 项目地址: https://gitcode.com/openeuler/integration-test 前往项目官网免费下载:…

Unity游戏文本翻译架构深度解析:XUnity.AutoTranslator的技术实现与工程实践

Unity游戏文本翻译架构深度解析:XUnity.AutoTranslator的技术实现与工程实践

2026/7/12 0:03:42

Unity游戏文本翻译架构深度解析:XUnity.AutoTranslator的技术实现与工程实践 【免费下载链接】XUnity.AutoTranslator 项目地址: https://gitcode.com/gh_mirrors/xu/XUnity.AutoTranslator XUnity.AutoTranslator作为Unity游戏社区中最成熟的文本翻译解决方…

openEuler Raspberry Pi Kernel设备驱动开发指南:为树莓派硬件添加支持

openEuler Raspberry Pi Kernel设备驱动开发指南:为树莓派硬件添加支持

2026/7/12 0:03:42

openEuler Raspberry Pi Kernel设备驱动开发指南:为树莓派硬件添加支持 【免费下载链接】raspberrypi-kernel It provides openEuler kernel source for Raspberry Pi 项目地址: https://gitcode.com/openeuler/raspberrypi-kernel 前往项目官网免费下载&…

openEuler系统集成测试实战:基于smoke-test套件的环境验证技巧

openEuler系统集成测试实战:基于smoke-test套件的环境验证技巧

2026/7/12 0:03:42

openEuler系统集成测试实战:基于smoke-test套件的环境验证技巧 【免费下载链接】integration-test The repo contains test suits for system integration test 项目地址: https://gitcode.com/openeuler/integration-test 前往项目官网免费下载:…