1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > 解决CMD命令行窗口不显示颜色问题python

解决CMD命令行窗口不显示颜色问题python

时间:2021-12-16 16:16:00

相关推荐

解决CMD命令行窗口不显示颜色问题python

最近在做一个CMD命令行窗口显示不同颜色的字体的功能时,发现按照网上的方法设置均不生效

1.比如最常见的方法,print("\033[0;30;40m\tHello World\033[0m")

我执行的结果如下:

解决方法如下:需从colorama中导入init

#-*- coding:utf-8 -*-from colorama import initinit(autoreset=True)print("\033[0;30;40m\tHello World\033[0m") #黑色 print("\033[0;31;40m\tHello World\033[0m") #红色print("\033[0;32;40m\tHello World\033[0m") #绿色print("\033[0;33;40m\tHello World\033[0m") #黄色print("\033[0;34;40m\tHello World\033[0m") #蓝色 print("\033[0;35;40m\tHello World\033[0m") #紫色print("\033[0;36;40m\tHello World\033[0m") #浅蓝 print("\033[0;37;40m\tHello World\033[0m") #白色

运行结果:

2.方法二,使用Fore设置颜色

from colorama import init,Foreinit(autoreset=True)print (Fore.YELLOW + "welcome to python !!")print ("automatically back to default color again") print(Fore.RED+'SCORE: ' + str(100))

运行结果:

3.方法三,使用init_pair,color_pair设置颜色

import cursesstdscr=curses.initscr()def display_info1(str,x,y,colorpair=1):#x,y是横纵坐标#使用指定的colorpair显示文字stdscr.addstr(y,x,str,curses.color_pair(colorpair))stdscr.refresh() def display_info2(str,x,y,colorpair=2):#x,y是横纵坐标#使用指定的colorpair显示文字stdscr.addstr(y,x,str,curses.color_pair(colorpair))stdscr.refresh()def get_ch_and_continue():#演示press any key to continue#设置nodelay为0时变成阻塞式等待stdscr.nodelay(0)#输入一个字符ch=stdscr.getch()#重置nodelay,使得控制台可以以非阻塞的方式接受控制台输入,超时1秒stdscr.nodelay(1)return Truedef set_win():#控制台设置global stdscr#使用颜色首先需要调用这个方法curses.start_color()#文字和背景色设置,设置了两个color pair,分别为1和2curses.init_pair(1,curses.COLOR_GREEN,curses.COLOR_BLACK)curses.init_pair(2,curses.COLOR_RED,curses.COLOR_BLACK)#关闭屏幕回显curses.noecho()#输入时不需要回车确认curses.cbreak()#设置nodelay,使得控制台可以以非阻塞的方式接受控制台输入,超时1秒stdscr.nodelay(1)def unset_win():#恢复控制台默认设置(若不恢复,会导致即使程序结束退出了,控制台仍然是没有回显的)curses.nocbreak()stdscr.keypad(0)curses.echo()#结束窗口curses.endwin()if __name__=='__main__':try:set_win()display_info1('Hello,curses!',5,5)display_info2('Press any key to continue...',0,10)get_ch_and_continue()except Exception as e:raise efinally:unset_win()

运行结果:

另附:python代码实现2048-功能拓展在控制台输出颜色的实例。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。