我用python写了一个curses程序。它运行良好。但是,当我使用 时nodelay()
,程序在终端启动后立即退出,根本没有显示任何内容(只是一个新提示)。
编辑
此代码将重现该错误:
sc = curses.initscr() sc.nodelay(1) # 但是去掉这行可以让程序正常运行 对于范围内的愤怒(20): sc.addstr(愤怒,1,“嗨”)
这是我的完整代码
导入诅咒,时间,系统,随机 定义油漆(x,y,i): #... 定义字符串(s,y): #... 定义饲料(): #... sc = curses.initscr() curses.start_color() curses.curs_set(0) sc.nodelay(1) ######################################## # vars + 颜色初始化 对于范围内的愤怒(20): 尝试: dir = chr(sc.getch()) sc.clear() 喂养() #很多ifs body.append([x, y]) body.pop(0) 对于身体点: 油漆(*点,我=2) sc.move(height-1, 1) sc.refresh() 时间.睡眠(等待) 例外为 e: 打印 sys.exc_info()[0], e sc.getch() 诅咒.beep() 诅咒.endwin()
为什么会发生这种情况,如何nodelay()
安全使用?