使用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上給我個星星。?

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