如何在打字时用咒语给单词着色?

2022-09-28 19:55:50 发布

您现在位置:Python中文网/ 问答频道 /正文

我是新的诅咒图书馆,我试图彩色的标准,但还没有做。我写了下面的代码,但他们没有工作,我希望,有人能帮我展示如何着色的标准?你知道吗

#!/usr/bin/env python3
# -*- coding: utf-8 -*-

import curses

stdscr = curses.initscr()
curses.start_color()
curses.init_pair(1, curses.COLOR_RED, curses.COLOR_BLACK)
stdscr.nodelay(1)

q = 1
x = set()

while q != ord("q"):
    if len(x) == 3:
        stdscr.addstr(0,0, "def", curses.color_pair(1))
    if q == ord("d"):
        x.add("d")
    elif q == ord("e"):
        x.add("e")
    elif q == ord("f"):
        x.add("f")
    q = stdscr.getch()

stdscr.getch()
curses.endwin()

Tags: 代码add标准if图书馆cursescolor彩色着色elifpairgetchordstdscr
1条回答
网友
1楼 ·

您的问题似乎是屏幕更新。此版本将更新放在x设置为最新之后:

#!/usr/bin/env python3
# -*- coding: utf-8 -*-

import curses

stdscr = curses.initscr()
curses.start_color()
curses.init_pair(1, curses.COLOR_RED, curses.COLOR_BLACK)
curses.raw()
curses.noecho()

q = -1
x = set()

while q != ord("q"):
    if q >= 0:
        stdscr.addstr(chr(q))
    if q == ord("d"):
        x.add("d")
    elif q == ord("e"):
        x.add("e")
    elif q == ord("f"):
        x.add("f")
    else:
        x = set()
    if len(x) == 3:
        stdscr.addstr("\b\b\bdef", curses.color_pair(1))
        x = set()
    q = stdscr.getch()

stdscr.getch()
curses.endwin()

热门问题