bpython 功能强大的Python shell


Posted in Python onFebruary 16, 2016

Python是一个非常实用、流行的解释型编程语言,其优势之一就是可以借助其交互的shell进行探索式地编程。你可以试着输入一些代码,然后马上获得解释器的反馈,而不必专门写一个脚本。但是Python自带的shell也有一些局限性,例如无法自动补全、不能高亮语法等。

好在强大的Python对默认shell进行了扩展,开发了许多漂亮的Python shell。每一个都提供了一个极好的交互性的Python 体验。今天我就为大家介绍其中较为优秀的一款 — bpython。

bpython 功能强大的Python shell

bpython简介

bpython是一个不错的Python解释器的界面,开发者的目的是提供给用户所有的内置功能,很像现在的IDE(集成开发环境),但是将这些功能封装在在一个简单,轻量级的包里,可以在终端窗口里面运行。

bpython并不追求创造任何新的或者开创性的东西。相反,它聚集了一些简洁的理念,关注于实用性和操作性。

如何安装

bpython最新版本是0.15。有四种安装方式:

  • 官网下载最新版本的tarball:http://bpython-interpreter.org/releases/
  • 克隆bpython的Git仓库:git clone https://github.com/bpython/bpython/
  • 通过pip安装:pip install bpython
  • 通过系统自带的包管理器:apt-get install bpython

想让bpython正常运行的话,还需要安装以下依赖包:

Pygments requests curtsies >= 0.1.18,< 0.2 greenlet urwid (for bpython-urwid only)

具体功能

功能十分丰富,具体包括:

  • 内置的语法高亮 ? 使用Pygments排版你敲出的代码,并合理配色
  • 根据你的行为,显示自动补全的建议
  • 为任何Python函数列出所期望的参数 ? 可以显示你调用的任何函数的参数列表
  • “Rewind”功能会调出内存里的最后一行代码并重新执行
  • 可以将你输入的代码送到pastebin
  • 可以将你输入的代码保存到一个文件
  • 自动缩进
  • 支持Python 3

类似的Python shell

除了bpython之外,还有IPython、ptpython和dreampie等三个类似的Python shell。

知道什么是bpython,它的安装方法,功能了吧,希望大家可以深入的进行了解。

Python 相关文章推荐
Python常见数据结构详解
Jul 24 Python
详解Python中的type()方法的使用
May 21 Python
关于Python面向对象编程的知识点总结
Feb 14 Python
python字符串str和字节数组相互转化方法
Mar 18 Python
python特性语法之遍历、公共方法、引用
Aug 08 Python
python如何写出表白程序
Jun 01 Python
python实现每天自动签到领积分的示例代码
Aug 18 Python
python 实现音频叠加的示例
Oct 29 Python
python 实现百度网盘非会员上传超过500个文件的方法
Jan 07 Python
python中%格式表达式实例用法
Jun 18 Python
Python-OpenCV教程之图像的位运算详解
Jun 21 Python
Python测试框架pytest高阶用法全面详解
Jun 01 Python
深入解读Python解析XML的几种方式
Feb 16 #Python
Python3.2模拟实现webqq登录
Feb 15 #Python
python编码最佳实践之总结
Feb 14 #Python
Python在Console下显示文本进度条的方法
Feb 14 #Python
如何使用python爬取csdn博客访问量
Feb 14 #Python
python动态网页批量爬取
Feb 14 #Python
Python ftp上传文件
Feb 13 #Python
You might like
php将数据库中的电话号码读取出来并生成图片
2008/08/31 PHP
php检测iis环境是否支持htaccess的方法
2014/02/18 PHP
Javascript与PHP验证用户输入URL地址是否正确
2014/10/09 PHP
php获取文件名后缀常用方法小结
2015/02/24 PHP
列举PHP的Yii 2框架的开发优势
2015/07/03 PHP
微信公众平台开发教程⑥ 微信开发集成类的使用图文详解
2019/04/10 PHP
PHP页面静态化――纯静态与伪静态用法详解
2020/06/05 PHP
JS 控制CSS样式表
2009/08/20 Javascript
JS+flash实现chrome和ie浏览器下同时可以复制粘贴
2013/09/22 Javascript
jquery事件重复绑定的快速解决方法
2014/01/03 Javascript
Javascript 赋值机制详解
2014/11/23 Javascript
node.js中的console.warn方法使用说明
2014/12/09 Javascript
JavaScript动态改变div属性的实现方法
2015/07/22 Javascript
flag和jq on 的绑定多个对象和方法(必看)
2017/02/27 Javascript
Angular5升级RxJS到5.5.3报错:EmptyError: no elements in sequence的解决方法
2018/04/09 Javascript
微信小程序将字符串生成二维码图片的操作方法
2018/07/17 Javascript
chosen实现省市区三级联动
2018/08/16 Javascript
基于javascript canvas实现五子棋游戏
2020/07/08 Javascript
使用Mixin设计模式进行Python编程的方法讲解
2016/06/21 Python
Python模拟登录之滑块验证码的破解(实例代码)
2019/11/18 Python
Python中if有多个条件处理方法
2020/02/26 Python
Python3 shelve对象持久存储原理详解
2020/03/23 Python
HTML5地理定位与第三方工具百度地图的应用
2016/11/17 HTML / CSS
html5 Canvas画图教程(10)—把面拆成线条模拟出圆角矩形
2013/01/09 HTML / CSS
Canvas图片分割效果的实现
2019/07/29 HTML / CSS
自荐信封面
2013/12/04 职场文书
创业融资计划书
2014/04/25 职场文书
青年志愿者先进事迹
2014/05/06 职场文书
标准版离职证明书
2014/09/12 职场文书
2014年房地产个人工作总结
2014/12/20 职场文书
政府会议通知范文
2015/04/15 职场文书
详解Go语言Slice作为函数参数的使用
2021/07/02 Golang
Python编写nmap扫描工具
2021/07/21 Python
使用kubeadm命令行工具创建kubernetes集群
2022/03/31 Servers
vue+elementUI实现表格列的显示与隐藏
2022/04/13 Vue.js
mysql 子查询的使用
2022/04/28 MySQL