如何在Python 3.10.8中使用RGB值输出彩色文本?
在Python中用RGB值输出彩色文本
当然可以用RGB值指定文本颜色,不用依赖那些只有预设色的库,直接利用终端支持的ANSI 24位真彩色转义序列就能实现。
核心原理
终端支持的ANSI转义序列中,用\033[38;2;R;G;Bm来设置前景色(文本颜色),用\033[48;2;R;G;Bm设置背景色,最后用\033[0m重置格式,避免后续文本继承颜色。
代码示例
自定义前景色
def rgb_fg_text(text, r, g, b): return f"\033[38;2;{r};{g};{b}m{text}\033[0m" # 测试:输出RGB(255, 100, 150)的粉色文本 print(rgb_fg_text("这是自定义RGB颜色的文本", 255, 100, 150))
自定义背景色
def rgb_bg_text(text, r, g, b): return f"\033[48;2;{r};{g};{b}m{text}\033[0m" # 测试:输出带RGB(50, 200, 100)背景的文本 print(rgb_bg_text("带自定义RGB背景的文本", 50, 200, 100))
注意事项
- 确保你的终端支持24位真彩色:主流终端如Windows Terminal、iTerm2、Konsole等都支持,旧版Windows命令提示符(cmd)可能不兼容。
- 转义序列中的R、G、B值范围是0-255,对应RGB颜色的亮度值。
内容的提问来源于stack exchange,提问作者warloxx
相关产品推荐
相关产品推荐

