我正在尝试获得彩色命令行输出。我可以使用colorama
获得彩色的Python控制台输出:
from colorama import Fore
from colorama import Style
print(f'{Fore.GREEN}A')
print(f'{Fore.RED}B')
print('C')
print(f'{Style.RESET_ALL}D')
print('E')
这完全适用于PyCharm中的Python控制台。但是,如果我在Windows cmd
下运行该程序。根本没有颜色,但只添加了colorama文本而没有任何影响:
←[32mA
←[31mB
C
←[0mD
E
我可以修改代码,使其在Windows cmd
中也有效吗?
答案 0 :(得分:2)
您需要在colorama init调用中添加convert=True
:
from colorama import Fore, Style, init
init(convert=True)
print(f'{Fore.GREEN}A')
print(f'{Fore.RED}B')
print('C')
print(f'{Style.RESET_ALL}D')
print('E')
答案 1 :(得分:0)
在Jeremiah的帮助下,我能够在PyCharm和cmd中使它工作。这是完整的代码:
from colorama import Fore, Style, init
import psutil
import os
if psutil.Process(os.getpid()).parent().name() == 'cmd.exe':
init(convert=True)
print(f'{Fore.GREEN}A')
print(f'{Fore.RED}B')
print('C')
print(f'{Style.RESET_ALL}D')
print('E')