我正在尝试使用 Python(使用 PyCharm 2.0)运行一个简单的 curses 脚本。
这是我的脚本:
import curses
stdscr = curses.initscr()
curses.noecho()
curses.cbreak()
stdscr.keypad(1)
while 1:
c = stdscr.getch()
if c == ord('p'): print("I pressed p")
elif c == ord('q'): break
curses.nocbreak(); stdscr.keypad(0); curses.echo()
curses.endwin()
当我从我的 IDE (PyCharm 2) 运行它时,我收到以下错误:
_curses.error: setupterm: could not find terminal
Process finished with exit code 1
如果我从 bash 运行脚本,它只会卡在 while 循环中,对按下 p 或 q 没有反应。
任何帮助将不胜感激。
最佳答案
你必须设置环境变量TERM
和TERMINFO
,像这样:
export TERM=linux
export TERMINFO=/etc/terminfo
并且,如果您的设备没有此目录 (/etc/terminfo
),请创建并复制 terminfo 数据库。
“linux”和“pcansi”终端可以下载数据库:
关于python - Setupterm 找不到终端,在 Python 程序中使用 curses,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9485699/