拓十年匠心定制 · 商业建站与技术教学双线并行 咨询热线:400-886-1026 service@lmnt.cn
ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

python Rich(Textualize/rich)

python Rich(Textualize/rich)

放假了,闲着也是闲着。

学习下python,看有什么有趣的工具。


GitHub:https://github.com/Textualize/rich,57k⭐,MIT 协议,Python 终端富文本渲染库,终端美化的标杆,很多知名CLI 工具底层都在用它(nvitop、pytest、crawl4ai 等)


一句话定位:让枯燥的终端输出变得彩色、结构化、好看,不用写复杂的底层 ANSI 转义码。跨平台:Linux /macOS/ Windows Terminal(旧 cmd 颜色支持弱),Python3.7+。


安装

pip install rich

一个demo示例:

from rich.console import Console from rich.table import Table from rich.progress import Progress import time console = Console() # 1. 彩色文字 console.print("[bold magenta]=== Rich 演示 ===[/bold magenta]") # 2. 表格 table = Table(title="设备状态") table.add_column("设备名", style="cyan") table.add_column("状态", style="green") table.add_column("负载", style="yellow") table.add_row("server-01", "在线", "32%") table.add_row("gpu-01", "在线", "78%") table.add_row("db-01", "[red]离线[/red]", "--") console.print(table) # 3. 进度条 with Progress() as progress: task = progress.add_task("[cyan]处理数据...", total=100) while not progress.finished: progress.update(task, advance=2) time.sleep(0.05)

看起来很高级的说


我其实几乎没有使用过python写程序,大部分都是使用C/C++写程序。

但是我感觉python是个强大且方便的工具,有很多的包可以直接调用,所以我觉得可以用它来做一些事情,比如快速验证我的一些想法,或者某些不追求性能的场景,我可以使用它来实现一些功能,简化我的工作量。


C/C++ 做核心、高性能、底层;Python 做快速原型验证、脚本自动化、数据处理、调用成熟包,二者互补


什么是TUI界面?

TUI(Text-based User Interface,文本用户界面)

一句话:不是 GUI 窗口(没有图片、按钮控件渲染引擎),而是在终端里,用字符、颜色、光标来做交互界面。

GUI = Graphical 图形界面(Qt、Windows 窗口、网页)

TUI = Text 文本界面(终端内运行,字符构成界面)

你写 C/C++ 做 Qt 是 GUI;

我们刚才看的Rich 负责 TUI 渲染,Textual 是 Python 的 TUI 框架。

textual : 文本的


返回列表