在Python 3.7及更高版本中,我们可以通过几种不同的方法来输出带有颜色的文本。这些技巧不仅可以让终端输出更加美观,而且对于调试和代码高亮显示非常有用。以下是一些常用的颜色输出技巧。使用ANSI转...
在Python 3.7及更高版本中,我们可以通过几种不同的方法来输出带有颜色的文本。这些技巧不仅可以让终端输出更加美观,而且对于调试和代码高亮显示非常有用。以下是一些常用的颜色输出技巧。
ANSI转义序列是一种广泛使用的标准,用于在终端中设置文本的颜色、亮度和样式。在Python中,我们可以使用字符串的格式化功能来插入ANSI转义序列。
以下是一些基本的ANSI颜色代码:
# 红色
RED = '\033[91m'
# 绿色
GREEN = '\033[92m'
# 黄色
YELLOW = '\033[93m'
# 蓝色
BLUE = '\033[94m'
# 紫色
PURPLE = '\033[95m'
# 天蓝色
CYAN = '\033[96m'
# 白色
WHITE = '\033[97m'
# 重置颜色
RESET = '\033[0m'print(RED + "这是红色文本" + RESET)
print(GREEN + "这是绿色文本" + RESET)Python有一个内置的库curses,它可以用来创建文本用户界面,并且可以控制终端的颜色和样式。
curses是Python标准库的一部分,因此不需要安装。
import curses
def main(stdscr): # 关闭屏幕回显 curses.noecho() # 禁用键盘输入的自动回显 curses.curs_set(0) # 获取屏幕对象 stdscr.clear() # 设置颜色 curses.init_pair(1, curses.COLOR_RED, curses.COLOR_BLACK) # 输出带颜色的文本 stdscr.addstr(0, 0, "这是红色文本", curses.color_pair(1)) stdscr.refresh()
curses.wrapper(main)colorama是一个第三方库,它可以在Windows和Linux系统上设置ANSI颜色。它简化了颜色的使用,并且可以在不同的终端和系统上保持一致性。
pip install coloramafrom colorama import Fore, Style
print(Fore.RED + "这是红色文本" + Style.RESET_ALL)对于代码高亮,我们可以使用pygments库,它是一个强大的语法高亮工具。
pip install pygmentsfrom pygments import highlight
from pygments.lexers import PythonLexer
from pygments.formatters import TerminalFormatter
code = """
def hello_world(): print("Hello, world!")
"""
highlight(code, PythonLexer(), TerminalFormatter())通过以上方法,我们可以轻松地在Python 3.7中实现颜色输出,从而提高代码的可读性和视觉呈现。