首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用更改数据的诅咒

使用更改数据的诅咒
EN

Stack Overflow用户
提问于 2014-08-10 19:15:59
回答 1查看 83关注 0票数 0

我有以下代码。数字范围每次递增1。即1-9,然后2-10等。我想显示这在一个shell窗口中使用python通过诅咒。

我们的目标是拥有一个不断变化的文本列表。

代码语言:javascript
复制
from itertools import cycle
import curses, contextlib, time

@contextlib.contextmanager
def curses_screen():
    """Contextmanager's version of curses.wrapper()."""
    try:
        stdscr=curses.initscr()
        curses.noecho()
        curses.cbreak()
        stdscr.keypad(1)
        try: curses.start_color()
        except: pass

        yield stdscr
    finally:
        stdscr.keypad(0)
        curses.echo()
        curses.nocbreak()
        curses.endwin()

with curses_screen() as stdscr:
    pad = curses.newpad(100, 100)
    pad.addstr(0,0, curses.longname())

    coord = 5, 5, 10, 75
    # simulate changing text #
    for z in range(1,10):
        s,e = z+1,z+10
        for x in range(s,e):
            pad.addstr(x,0, str(x))
    pad.refresh(0, 0, *coord)

使用此代码什么都不会打印到屏幕上?注意:我使用newpad的原因是为了最终浏览这个列表。

谢谢,

EN

回答 1

Stack Overflow用户

发布于 2014-08-10 19:34:18

这并不是说什么都没有打印到屏幕上,而是你在几微秒内完成了所有的打印,在这一点上,你恢复了curses之前的屏幕并退出。抛出一个pad.getch()或者仅仅是一个time.sleep(1),你会看到输出。

如果你想让它足够慢,你可以观看它,而不是像你的计算机可以计算数字一样快,你会希望循环中有一个延迟(和一个refresh)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25228030

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档