Python开发者的完美终端工具
本文由 Python 编程时光整理
Rich 是一个 Python 库,可以为你在终端中提供富文本和漂亮、精美的格式。
使用 Rich API 可以很容易的在终端输出添加各种颜色和不同风格。它可以绘制漂亮的表格,进度条,markdown,突出显示语法的源代码及回溯等等,优秀的功能不胜枚举。
# 1.Rich 兼容性
Rich 适用于 Linux,OSX 和 Windows。可与新的 Windows 终端一起使用,Windows 的经典终端仅限 8 种颜色。
Rich 还可以与 Jupyter NoteBook
一起使用,而无需其他配置。
# 2.Rich 安装说明
请选择以下任一种方式输入命令安装依赖:
Windows 环境 打开 Cmd (开始-运行-CMD)。
MacOS 环境 打开 Terminal (command+空格输入Terminal)。
如果你用的是 VSCode编辑器 或 Pycharm,可以直接使用界面下方的Terminal.
pip install rich
# 3.Rich 的 Print 功能
想毫不费力地将 Rich 的输出功能添加到你的Python脚本程序中,你只需导入 rich print 方法,该方法和其他 Python 的自带功能的参数类似。你可以试试:
from rich import printprint("Hello, [bold magenta]World[/bold magenta]!", ":vampire:", locals())
可以看到,基于 rich 的 print 方法输出的内容都是带颜色、带重点的,相比于Python自带的 print 有明显的优势。
# 4.自定义 Console 控制台输出
想要对 Rich 终端内容进行更多的自定义设置,你需要导入并构造一个控制台对象:
from rich.console import Consoleconsole = Console()
Console 对象含有一个 print 方法,它的界面与 python 内置的 print 功能相似。你可以试试:
console.print("Hello", "World!")
你可能已经料到,这时终端上会显示“ Hello World!”,请注意,与内置的“打印”功能不同,Rich 会将文字自动换行以适合终端宽度。
有几种方法可以为输出添加自定义颜色和样式。你可以通过添加 style 关键字参数来为整个输出设置样式。例子如下:
console.print("Hello", "World!", style="bold red")
输出如下图:
这个范例一次只设置了一行文字的样式。如果想获得更细腻更复杂的样式,Rich 可以渲染一个特殊的标记,其语法类似于 bbcode。示例如下:
console.print("Where there is a [bold cyan]Will[/bold cyan] there [u]is[/u] a [i]way[/i].")
# 5.Console 控制台记录
Console 对象具有一个 log() 方法,该方法具有与 print() 类似的界面,除此之外,还能显示当前时间以及被调用的文件和行。
默认情况下,Rich 将针对 Python 结构和 repr 字符串进行语法突出显示。如果你记录一个集合(如字典或列表),Rich 会把它漂亮地打印出来,使其切合可用空间。下面是其中一些功能的示例:
from rich.console import Console
console = Console()test_data = [{"jsonrpc": "2.0", "method": "sum", "params": [None, 1, 2, 4, False, True], "id": "1",},{"jsonrpc": "2.0", "method": "notify_hello", "params": [7]},{"jsonrpc": "2.0", "method": "subtract", "params": [42, 23], "id": "2"},
]def test_log():enabled = Falsecontext = {"foo": "bar",}movies = ["Deadpool", "Rise of the Skywalker"]console.log("Hello from", console, "!")console.log(test_data, log_locals=True)test_log()
以上范例的输出如下:
注意其中的 log_locals 参数会输出一个表格,该表格包含调用 log 方法的局部变量。
log 方法既可用于将长时间运行应用程序(例如服务器)的日志记录到终端,也可用于辅助调试。
Logging 处理程序
你还可以使用内置的处理类来对 Python 日志记录模块的输出进行格式化和着色。下面是输出示例:
# 6. 表情符号
将名称放在两个冒号之间即可在控制台输出中插入表情符号。示例如下:
>>> console.print(":smiley: :vampire: :pile_of_poo: :thumbs_up: :raccoon:")
Python开发者的完美终端工具相关推荐
- 专属Python开发者的完美终端工具—Rich
Rich 是一个 Python 库,可以为你在终端中提供富文本和漂亮.精美的格式. 使用 Rich API 可以很容易的在终端输出添加各种颜色和不同风格.它可以绘制漂亮的表格,进度条,markdown ...
- Python之打造专属Python开发者的完美终端工具Rich
一.前言 Rich 是一个 Python 库,可以在终端中提供富文本和漂亮.精美的格式. 使用 Rich API 可以很容易的在终端输出添加各种颜色和不同风格,它可以绘制漂亮的表格,进度条,markd ...
- 将Android手机打造成你的Python开发者桌面#华为云·寻找黑马程序员#
欢迎添加华为云小助手微信(微信号:HWCloud002 或 HWCloud003),输入关键字"加群",加入华为云线上技术讨论群:输入关键字"最新活动",获取华 ...
- 黑科技抗疫,Python开发者大集结!
2020年初,突如其来的新型冠状病毒肺炎打乱了所有人的节奏,但社会各界迅速团结起来,为抗击疫情贡献出自己的力量.除了捐款捐物外,很多科技公司运用5G.大数据.AI.云计算等新互联网技术,以科技的手段助 ...
- 50万+Python 开发者的选择,这本书对零基础真是太太太友好了
人生苦短,我用 Python! 10 月 30 日,Python 之父发推宣布自己退休,离开 DropBox.他说:"这感觉苦乐参半,我就要离开 DropBox 退休了,这令人忧伤.而我在 ...
- Python 开发者节省时间的 10 个小技巧
Python 是一个美丽的语言,可以激发用户对它的爱.所以如果你试图加入程序员行列,或者你有点厌倦C++,Perl,Java 和其他语言,我推荐你尝试Python. Python有很多吸引程序员的功能 ...
- Python 开发者的 6 个必备库
无论你是正在使用 Python 进行快速开发,还是在为 Python 桌面应用制作原生 UI ,或者是在优化现有的 Python 代码,以下这些 Python 项目都是应该使用的. Python 凭借 ...
- 揭秘 Python 火爆背后的真实现状,2020 Python 开发者调查
整理 | 李磊 责编 | 屠敏 出品 | CSDN(ID:CSDNnews) 历经四年迭代,Python 官方正式发布 2020 年度开发者调查报告.本次调查由 Python Software Fo ...
- 黑科技抗疫,Python 开发者大集结!
2020年初,突如其来的新型冠状病毒肺炎打乱了所有人的节奏,但社会各界迅速团结起来,为抗击疫情贡献出自己的力量.除了捐款捐物外,很多科技公司运用5G.大数据.AI.云计算等新互联网技术,以科技的手段助 ...
最新文章
- 中兴V880使用手记之五——刷入recovery
- 瓜分百万奖金 | 科大讯飞A.I.开发者大赛医疗赛道
- 采集音频和摄像头视频并实时H264编码及AAC编码[转]
- 什么是URL?协议头、路径和端口是什么意思?
- python画椭圆turtle_Python turtle画图库画姓名实例
- JavaScript立即执行函数学习
- 软件工程--第二章--可行性分析
- javascript面向对象编程实现[定义(静态)属性方法--继承]
- (27)VHDL实现非(数据流描述)
- 贝叶斯判别分析的基本步骤_环境感知算法-目标追踪1.2- 贝叶斯方法
- vue05-REST 请求
- php jwt payload,php实现jwt
- 第二百九十八节,python操作redis缓存-Set集合类型,可以理解为不能有重复元素的列表...
- 来上海度过的第一个五一,我去了哪些地方?
- pytorch 机器翻译 seq2seq 模型和注意力机制
- 网络安全 顶级进行鱼叉式钓鱼攻击?手把手教学
- java -cp 与 java -Djava.ext.dirs的区别与坑
- eclipse中ctrl+D失效的解决方案
- Anaconda Navigator Applications 缺少Notebook等应用
- 【C语言练习4】根据公式计算π的值,π=4-4/3+4/5-4/7+4/9+... 打印出一个表格来显示,用公式中的1项、2项、3项...计算出来π的近似值
热门文章