python中跨平台控制台应用程序的类似curses的库

and*_*s-h 21 python linux windows console ncurses

我正在研究在python中开发一个控制台应用程序,该应用程序应该能够在Windows和Linux下运行.为此,我真的想使用像curses这样的高级控制台库.但是,据我所知,Windows上没有curses.

我还有其他选择吗?不幸的是,在Windows下使用cygwin不是一个选择......

谢谢你的帮助!

小智 6

有一个wcurses.我从未尝试过,但它可能满足您的需求.听起来它没有完全的curses兼容性,但可能足够接近.它也可能没有使用DOS终端,而是打开一个GUI窗口并在里面绘制等宽文本.

其他Windows文本模式选项包括:

我相信两者都只是窗户.

  • 请注意:[Curses for Windows & Python - archive.org](http://web.archive.org/web/20101025073658/http://adamv.com/dev/python/curses) 中 `wcurses` 的最后一个快照/) 我发现是 2010 年的。 (2认同)

Pet*_*ain 6

我最近遇到了这个问题,因为我正在整理一个包(https://github.com/peterbrittain/asciimatics)。我对要求您安装(或更糟)构建单独的二进制可执行文件(如 PDCurses 或 cygwin)的解决方案不太满意,因此我创建了一个统一的 API,为 Windows、OSX 和UNIX 平台。

它现已上线并已在 CentOS 6/7 和 Windows 7/8/10 和 OSX 10.11 上进行测试。您可以使用 pip 从 PYPI 安装它,然后使用Screen该类来控制您的控制台。正如您从项目库中看到的,它应该提供您所有的控制台需求,但是如果您需要一些额外的功能,请在 GitHub 上发布增强请求,我会看看我能做些什么。


Gri*_*ave 5

我不知道为什么人们会在问题评论中回答,但 debustad 是对的,Windows 有一个预先构建的诅咒:

请注意那里还有许多其他有用的库。完成此操作后,安装 pip 和(鲜为人知但优秀的)bpython交互式解释器以立即尝试:

pip install bpython
Run Code Online (Sandbox Code Playgroud)

我还推荐Urwid 库来获得更高级别的东西。从未在 Windows 上尝试过,但使用curses 软件包之一应该可以实现。