我是Python的新手,它试图在控制台中打印彩色文本。我的操作系统是Windows10。代码如下:
class bcolors:
"""
Colors for console
"""
HEADER = '\033[95m'
YGREEN = '\033[92m'
WARNING = '\033[93m'
ENDC = '\033[0m'
def main():
user_name: str = input(
f'***Hello {bcolors.YGREEN}friend{bcolors.ENDC} Welcome***\nPlease enter your Name:\n')
if __name__ == '__main__':
main()
但是当我通过CMD或PyCharm执行此代码时,我不会得到彩色文本。输出为:
怎么了?
答案 0 :(得分:2)
我建议您改用Printy:
安装:
pip3 install printy
使用它:
from printy import inputy
user_name = inputy("Hello [n]friend@, \n Please enter your name:)
“ n”标志会将绿色添加到“朋友”一词。这是一个与操作系统无关的库
答案 1 :(得分:1)
尝试在您的主体中使用它:
print(bcolors.WARNING + "Warning: No active frommets remain. Continue?" + bcolors.ENDC)
或这个:
print(f"{bcolors.WARNING}Warning: No active frommets remain. Continue?{bcolors.ENDC}")
答案 2 :(得分:1)
此代码仅在符合XTerm的Linux / Unix终端上工作。如果您希望此代码有效,请参见https://pypi.org/project/colorama。
import colorama
colorama.init(wrap=True)
class bcolors:
"""
Colors for console
"""
HEADER = '\033[95m'
YGREEN = '\033[92m'
WARNING = '\033[93m'
ENDC = '\033[0m'
def main():
print(f'***Hello {bcolors.YGREEN}friend{bcolors.ENDC} Welcome***\nPlease enter your Name:\n', end='')
user_name: str = input()
if __name__ == '__main__':
main()
答案 3 :(得分:0)
如果您不想安装任何东西,只需将其添加到代码的开头
import subprocess
subprocess.call('', shell=True)