使用python在控制台指定位置显示文本

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上给我个星星。?

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章