用Python shell简化开发


Posted in Python onAugust 08, 2018

Python 编程语言已经成为 IT 中使用的最流行的语言之一。成功的一个原因是它可以用来解决各种问题。从网站开发到数据科学、机器学习到任务自动化,Python 生态系统有丰富的框架和库。本文将介绍一些有用的 Python shell 来简化我们的开发。

Python Shell

Python Shell 即原生的 Python 交互环境,可以让你以交互模式使用 Python 解释器。这在测试代码或尝试新库时非常有用。在 Ubuntu 中,你可以通过在终端会话中输入 python 来调用默认的 shell。

$ python
Python 3.5.2 (default, Nov 23 2017, 16:37:01)
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> print('hi')
hi

IPython

IPython 为 Python shell 提供了许多有用的增强功能。例如包括 tab 补全,对象内省,可以调用系统 shell 访问和命令历史检索。

安装和运行 IPython

$ pip install ipython

$ ipython --version
6.5.0

自动补全

在 ipython 环境下就可以使用 tab 补全啦,当遇到使用不熟悉的库时,此功能会派上用场。

用Python shell简化开发

内省

如果不熟悉某个库的某个方法,可以输入 ? 命令来查看文档。对此的更多详细信息,也可以使用 ??命令。这就叫做对象的内省。

用Python shell简化开发

运行 shell 命令

另一个很酷的功能是使用 ! 字符执行系统 shell 命令的能力。然后还可以在 IPython shell 中引用该命令的结果。

用Python shell简化开发

IPython 完整的功能列表可在官方文档中找到。

crtl+r 可以搜索历史命令:

用Python shell简化开发

bpython

bpython 并不能像 IPython 做那么多,但它却在一个简单的轻量级包中提供了一系列有用功能。除其他功能之外,bpython 提供:

  • 内嵌语法高亮显示
  • 在你输入时提供自动补全建议
  • 可预期的参数列表,bpython可以在调用函数时显示参数列表。
  • 能够将代码发送或保存到 pastebin 服务或文件中

安装和运行 bpython

$ pip install bpython

$ bpython --version
bpython version 0.17.1 on top of Python 3.5.2 /usr/bin/python
(C) 2008-2016 Bob Farrell, Andreas Stuehrk, Sebastian Ramacher, Thomas Ballinger, et al. See AUTHORS for detail.

在你输入的时候,bpython 为你提供了选择来自动补全你的代码。

用Python shell简化开发

当你调用函数或方法时,会自动显示需要的参数和文档字符串。

用Python shell简化开发

用Python shell简化开发

有关配置和功能的更多细节,请参考 bpython 官方文档。

总结

使用增强的 Python shell 是提高生产力的好方法。它为你提供增强的功能来编写快速原型或尝试新库。

Python 相关文章推荐
python的Template使用指南
Sep 11 Python
Python实现短网址ShortUrl的Hash运算实例讲解
Aug 10 Python
解决uWSGI的编码问题详解
Mar 24 Python
Pandas中把dataframe转成array的方法
Apr 13 Python
Python多继承顺序实例分析
May 26 Python
Python中new方法的详解
Jan 15 Python
Python获取一个用户名的组ID过程解析
Sep 03 Python
Python中url标签使用知识点总结
Jan 16 Python
pycharm全局搜索的具体步骤
Jul 28 Python
python 基于opencv实现图像增强
Dec 23 Python
Pytorch 图像变换函数集合小结
Feb 01 Python
教你用python实现12306余票查询
Jun 30 Python
在Python中使用gRPC的方法示例
Aug 08 #Python
Python实现购物评论文本情感分析操作【基于中文文本挖掘库snownlp】
Aug 07 #Python
python实现彩票系统
Jun 28 #Python
django框架自定义用户表操作示例
Aug 07 #Python
Python实现基于POS算法的区块链
Aug 07 #Python
tensorflow学习教程之文本分类详析
Aug 07 #Python
Django添加feeds功能的示例
Aug 07 #Python
You might like
收听困难?教您超简便短波广播抗干扰方法!
2021/03/01 无线电
main.php
2006/12/09 PHP
php 一元分词算法
2009/11/30 PHP
PHP ADODB实现事务处理功能示例
2018/05/25 PHP
Javascript - HTML的request类
2007/01/09 Javascript
用JavaScript实现UrlEncode和UrlDecode的脚本代码
2008/07/23 Javascript
jQuery计算textarea中文字数(剩余个数)的小程序
2013/11/28 Javascript
jQuery实现获取table表格第一列值的方法
2016/03/01 Javascript
深入解析AngularJS框架中$scope的作用与生命周期
2016/03/05 Javascript
Web程序员必备的7个JavaScript函数
2016/06/14 Javascript
将List对象列表转换成JSON格式的类实现方法
2016/07/04 Javascript
AngularJS基础 ng-csp 指令详解
2016/08/01 Javascript
用angular实现多选按钮的全选与反选实例代码
2017/05/23 Javascript
vue-cli 自定义指令directive 添加验证滑块示例
2017/10/19 Javascript
Angular刷新当前页面的实现方法
2018/11/21 Javascript
微信小程序云开发 搭建一个管理小程序
2019/05/17 Javascript
layui form表单提交后实现自动刷新
2019/10/25 Javascript
Vue开发环境跨域访问问题
2020/01/22 Javascript
ES6函数实现排它两种写法解析
2020/05/13 Javascript
[03:46]DOTA2英雄基础教程 维萨吉
2013/12/11 DOTA
python定时执行指定函数的方法
2015/05/27 Python
解决python3 Pycharm上连接数据库时报错的问题
2018/12/03 Python
详解python3安装pillow后报错没有pillow模块以及没有PIL模块问题解决
2019/04/17 Python
python入门之基础语法学习笔记
2020/02/08 Python
基于python连接oracle导并出数据文件
2020/04/28 Python
Ever New加拿大官网:彰显女性美
2018/10/05 全球购物
司法所长先进事迹
2014/06/02 职场文书
英语专业自荐书
2014/06/13 职场文书
安全伴我行演讲稿
2014/09/04 职场文书
2014大学生职业生涯规划书最新范文
2014/09/13 职场文书
2014各大专业毕业生自我评价
2014/09/17 职场文书
公司年夜饭通知
2015/04/25 职场文书
考生诚信考试承诺书
2015/04/29 职场文书
2015年暑期见闻
2015/07/14 职场文书
男方家长婚礼答谢词
2015/09/29 职场文书
Python+uiautomator2实现自动刷抖音视频功能
2021/04/29 Python