Python输出彩色字:Curses tkinter string

本文介绍了如何在Python中使用字符串转义序列、Curses模块和GUI组件为控制台文本添加颜色,包括转义序列的工作原理、Curses模块的安装与使用示例,以及Tkinter GUI中的文本颜色设置方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

前言

==1== 字符串转义序列

实现过程

模块下载

==2==Curses模块

Curses官方文档

Curses简介 

Curses安装

==3==GUI组件


前言

在实际应用开发中,我们经常会为控制台的输出文本添加一些颜色。

但是Python中的print()函数明显没有提供颜色选项。

根据我自己的了解,在终端上输出带颜色文字共有三种方法:

[1]字符串转义序列

[2]Curses模块

[3]GUI组件

==1== 字符串转义序列

实现过程

      终端的字符颜色是用转义序列控制的,是文本模式下的系统显示功能,和具体的语言无关。

      转义序列是以ESC开头,即用\033来完成(ESC的ASCII码用十进制表示是27,用八进制表示就是033)。

书写格式
     033[显示方式;前景色;背景色m + \033[0m

     注意:开头部分的三个参数:显示方式,前景色,背景色是可选参数,可以只写其中的某一个;另外由于表示三个参数不同含义的数值都是唯一的没有重复的,所以三个参数的书写先后顺序没有固定要求,系统都能识别;但是,建议按照默认的格式规范书写。

     对于结尾部分,其实也可以省略,但是为了书写规范,建议\033[***开头,\033[0m结尾。

示例:

#!/usr/bin/env python3

#示例
print("\033[32m This is the GREEN text")
#        ^ |<>||<---文本部分--------->| 
#      ESC 样式 

 输出:

 但是在cmd上会显示成这样:

从这里我们发现了两个问题:一个是cmd中的问题,另外一个是Terminal中输出后,接下来的提示符以及输入内容都变色了。

cmd中的问题请看下面两节。

现在我们讨论WT中的问题:

既然字符串转义序列可以改变颜色,那么我们可以在这之后调回白色。

print("\033[32m GREEN \033[37m") #37是白色

 

太棒了!(^-^)V

不仅可以设置颜色,还可以设置背景和样式。

模块下载

本人制作了一个模块专门使用该特性:

Python颜色字模块-Python文档类资源-优快云文库https://download.youkuaiyun.com/download/qq_52516913/50595487


具体看下图:(部分转载来自:Python在终端输出彩色字体_u013560932的博客-优快云博客https://blog.youkuaiyun.com/u013560932/article/details/79476164?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522163800519016780274178345%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=163800519016780274178345&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduend~default-2-79476164.pc_search_result_control_group&utm_term=python+%E8%BE%93%E5%87%BA%E5%BD%A9%E8%89%B2%E5%AD%97%E4%BD%93&spm=1018.2226.3001.4187

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值