1001种玩法 | Python Prompt Toolkit:构建强大交互式命令行的 Python 工具库

Python Prompt Toolkit:构建强大交互式命令行的 Python 工具库python

prompt_toolkit 是一个用于构建强大交互式命令行的 Python 工具库。shell

 

你是否是在找交互式的 Python shell 工具 ptpython 呢?咱们把 ptpython 的源码转移到了一个独立的仓库。如此一来,咱们确信  prompt_toolkit 库不会被其余 ptpython 东西“污染”,而且 ptpython 也能够独立开发。如今必须用下面这个命令安装 ptpython :vim

 

pip install ptpython缓存

 

 

prompt-toolkit 的特性features
函数

 

prompt_toolkit 可用做 GNU readline 的替代品,但其实比后者还好得多。工具

部分特性:ui

  • 纯 Python;spa

  • 输入时支持语法高亮;(有 Pygments 词法分析器)命令行

  • 支持多行输入编辑;调试

  • 高级代码补全;

  • 支持  Emacs 和 Vi 热键绑定;(和 readline 相似)

  • 支持反向和正向的增量搜索;

  • 支持 Python 2.6  到 3.4 之间的版本;

  • 支持 Unicode 双宽字符;(好比:中文输入)

  • 选择文本复制/粘贴 (Both Emacs and Vi style.)

  • 多输入缓存

  • 轻量级,只依赖于 Pygments、six 和 wcwidth;

  • Code written with love.

  • 支持 Linux、OS X、OpenBSD 和 Windows 系统;

 

安装

pip install prompt-toolkit

 

getting started

先来个简单的示例:

 

 

from prompt_toolkit.shortcuts import get_input

 

if __name__ == '__main__':

    answer = get_input('Give me some input: ')

    print('You said: %s' % answer)

 

复杂的示例,查看 examples 目录吧。所选示例都是直杆一件事的。不要怕看源码哦。 get_input 函数的实现,是个不错的开始。

注意:在 Python 2 下,你须要往上述例子添加 from __future__ import unicode_literals 。全部字符会看做是 unicode 字符。

 

 

使用 prompt-toolkit 的开源项目

 

  • ptpython: Python REPL

  • ptpdb: Python 调试器 (pdb 替代品)

  • pgcli: Postgres 客户端.

  • mycli: MySql 客户端.

  • pyvim: 纯 Python 实现的 Vim 克隆版

  • wharfee: Docker 命令行工具

  • 新智云官网  www.enncloud.cn

 

相关文章
相关标签/搜索