您可能想要查看Unicurses,它包装UNIX系统中的python核心curses模块,并在基于Windows的计算机上包装免费的pdcurses库.
该库旨在模拟原始ncurses库的语法和样式,因此如果您对使用curses样式编程学习TUI设计感兴趣,请查看它.
Urwid,从我读过的小文档,是一个非常有趣的库,它使用事件循环(反应器模式)作为应用程序设计的基础,就像tkinter或Twisted一样.此外,urwid还有一个专门设计用于Twisted的事件循环类,因此如果您的目标是创建用于网络的TUI,那么它是一个不错的选择.Twisted也使用反应器模式,所以如果你想学习那种风格,我会推荐它.
最后,如果你选择了ncurses风格的图书馆,请查看Dan Gookin关于ncurses的书.这是一个非常好的资源,也是我所知道的唯一一个今天印刷的资源.
还有其他选项,如newt,pygcurses等,但这应该让你开始.祝你好运,今天的TUI编程是那些难以闯入的技术狂欢之一,但它是有益的.
虽然以上是一个非常合理的Linux解决方案,但OP要求提供其他建议和理由.
谁想在像Python这样的现代OO语言中使用像curses这样的低级API?如果你被困在Windows内部(OP不是,但对很多人来说是一个问题),更别说了......必须有更好的方法.
为了解决这个问题,我已经整理了一个简单的跨平台类(是 - 包含Windows而不回退到PDcurses)来完成大多数人想要的终端/控制台.如果你在Linux上,这是一种更人性化的诅咒编程方式.如果您使用的是Windows,那么同一个类的工作原理就是没有外部二进制依赖项.您可以在https://github.com/peterbrittain/asciimatics中找到Screen类.
另外,我创建了一大堆高级对象来创建动画和TUI.例如,这是使用TUI小部件记录的示例:
如果你需要一个额外的功能,让我知道,我会看到我能做什么.
归档时间: |
|
查看次数: |
7807 次 |
最近记录: |