[英]print colored text as output in python not working
我正在尝试使用 python 使用彩色输出
1-我尝试使用这种格式:
print '\033[1;30mGray like Ghost\033[1;m'
我得到了这个输出:
←[1;30mGray like Ghost←[1;m
2-我尝试将 termcolor 包用作:
from termcolor import colored, cprint
text = colored('Hello, World!', 'red', attrs=['reverse', 'blink'])
print(text)
我得到了这个输出:
[5m[7m[31mHello, World![0m
为什么我不能在输出中使用颜色?
我尝试了其他方法,但都给出了几乎相同的输出 还有另一种方法可以尝试吗?
我知道你只在对 Tom Dee 的回答的评论中提到了 Colorama,而不是在你原来的问题中,但我对 Colorama 有同样的问题,直到我添加了这段代码,它在尝试打印彩色文本之前初始化 Colorama:
from colorama import init
init()
由于您评论说您使用的是 python.exe,我认为您只在 Windows 中尝试过。 Windows cmd 不支持 ANSI 编码,如 termcolor 使用的 linux/unix。 因此,您必须使用另一个包来执行此操作。 我建议研究 colorama ( https://pypi.org/project/colorama/ )。
from colorama import Fore, Back, Style
print(Fore.RED + 'some red text')
print(Back.GREEN + 'and with a green background')
print(Style.DIM + 'and in dim text')
print(Style.RESET_ALL)
print('back to normal now')
该网站的示例向您展示了如何将前景和背景更改为多种颜色。
在导入logging
和coloredlogs
logging
之前,我遇到了同样的问题
from termcolor import colored
import logging, coloredlogs
logger = logging.getLogger(f"Logger")
coloredlogs.install(logger=logger)
它解决了我的问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.