我在 Python 3.7.7 中编写了这段代码
from termcolor import colored
print(colored("lalalala_gagagag", "cyan"))
print(colored("http://google.com", "cyan"))
通过 PyCharm 运行它时,它给出:
(对于复制时屏幕没有保留颜色的事实,我深表歉意)
但是当通过控制台运行时:
[36mlalalala_gagagag[0m
[36mhttp://google.com[0m
colorama 也不起作用。我使用 PyInstaller 在 exe 中编译。问题并没有消失。
你能帮我解决这个问题吗?谢谢你。



关键在于控制台的标准编码。默认情况下,它是单字节。看起来像ASCII。为了显示颜色,您需要将其更改为双字节。这些是 cp1251、unicode、... 而且很奇怪 colorama 没有改变编码。它包装了终端,改变了它的编码。也许你没有初始化它(colorama.init)?