V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
chroming
V2EX  ›  Python

求助, python 如何写出 shell 字符界面的 GUI?

  •  1
     
  •   chroming · 2016-01-16 21:45:12 +08:00 · 4049 次点击
    这是一个创建于 3030 天前的主题,其中的信息可能已经有所发展或是发生改变。
    不太清楚怎么在谷歌搜到这个,只好来 v2 求助了。
    我想要用 python 实现在 Linux 字符界面能有上下键选择的菜单,类似 BIOS 那种。也就是运行程序后会显示几行选项,可以用键盘上下选择,按 Enter 选定进入这一项。有人知道应该用什么模块写吗?
    7 条回复    2016-01-17 00:43:13 +08:00
    loudis
        1
    loudis  
       2016-01-16 21:53:34 +08:00   ❤️ 1
    听说过一个 urwid ?
    yangtukun1412
        2
    yangtukun1412  
       2016-01-16 21:55:26 +08:00   ❤️ 1
    loudis
        3
    loudis  
       2016-01-16 21:57:08 +08:00
    对, curses 即可
    mulog
        4
    mulog  
       2016-01-16 21:57:50 +08:00   ❤️ 1
    没用过
    应该可以用标准库里的 curses, 还听说过一个库叫 npyscreen
    cosven
        5
    cosven  
       2016-01-16 22:33:00 +08:00   ❤️ 1
    curses python 标准库可以实现的。参考例子: https://github.com/darknessomi/musicbox

    不过也有 据说更好的第三方库: https://github.com/jonathanslenders/python-prompt-toolkit 。这个库的作者用它实现了一个 python 版的 vi 编辑器 pyvim (当然目前功能远不及 vim )。
    chroming
        6
    chroming  
    OP
       2016-01-16 22:41:11 +08:00
    @loudis @yangtukun1412 @mulog @cosven 十分感谢各位的回答。开始看 curses :)
    zhuangzhuang1988
        7
    zhuangzhuang1988  
       2016-01-17 00:43:13 +08:00 via Android
    http://coolshell.cn/articles/677.html 好早的一个文章。。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2296 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 03:53 · PVG 11:53 · LAX 20:53 · JFK 23:53
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.