使用python在控制台指定位置显示文本
程序员文章站
2022-07-05 10:36:23
...
在github上开了一个新项目:摸鱼工具集。第一个小工具的作用是:将股票信息插入到代码之间,让人觉得你在看代码,实际上在看股票。
这里涉及到一个问题,如何不刷屏,在固定的位置显示、刷新股票信息。找了一会找到了这个工具windows-curses(我的项目是在windows上写的)。这里就记录以下windows-curses如何使用。
首先要加载包并初始化
import time
import curses
def initCurses():
# 初始化并返回一个window对象
stdscr = curses.initscr()
stdscr.clear()
stdscr.refresh()
# 如何要用带颜色的字就必须调这个方法
curses.start_color()
# 设置颜色对,其实就是前景色和背景色
curses.init_pair(1, curses.COLOR_CYAN, curses.COLOR_BLACK)
curses.init_pair(2, curses.COLOR_RED, curses.COLOR_BLACK)
curses.init_pair(3, curses.COLOR_BLACK, curses.COLOR_WHITE)
curses.init_pair(4, curses.COLOR_GREEN, curses.COLOR_BLACK)
return stdscr
# 别的代码......
stdscr = initCurses()
# 设置文字的前景色和背景色
stdscr.attron(curses.color_pair(4))
# 在(x, y)位置显示字符串mStr
mStr = "1234"
x = 0
y = 0
stdscr.addstr(y, x, mStr)
# 关闭当前的前景色和背景色
stdscr.attroff(curses.color_pair(4))
# 一定要在更新后调用refresh,否则什么都不会发生
stdscr.refresh()
# 延时一会以便看清楚显示效果
time.sleep(10)
windows-curses这个工具其实可以用来制作文字操作界面或者文字菜单。这里有个文字菜单的例子。如果觉得有用请在github上给我个星星。????
上一篇: C++ 控制台移动光标
下一篇: Redis的Aof被阻塞原因调查