其他重要工具

虽然我们讨论了基本的Python版本,虚拟机和包管理,但在日常工作中我们仍然还需要一些专用的工具来完成任务。
尽管我不能把每一个工具的细节都讲到,然而我还是尽量给你提供基本的概述。

编辑器

对于Python编程有大量很优秀的编译器。对于我个人而言,我更倾向于Vim,但这里我并不想挑起一场 编辑器战争

有大量支持Python的编辑器,例如:Vim/Gvim, Emacs, GNOME上的GEdit,
KDE上的Kate, Scribes, ActiveState的Komodo Edit/IDE, WingWare的Wing IDE,
JetBrains上PyCharm, Eclipse的PyDEV插件。此外,还有其他,但这些似乎是最流行的。你可以任意选择最适合你的。

Pyflakes:源码检测工具

Pyflakes是一个检查Python源码并通过文本分析找出错误的工具。
它可以检测出语法错误,和(部分)逻辑错误,导入但未使用的模块,只使用一次的变量,等等。

你可以通过 pip 安装:

  1. $ pip install pyflakes

在命令行调用它,参数填源文件名即可,如下所示:

  1. $ pyflakes filename.py

Pyflakes也可已被集成进编辑器。这是它在我的vim中的样子。注意红波浪线:

images/vim-pyflakes.png

请自行前往Stack Overflow找出如何将Pyflakes添加到编辑器。

Pyflakes官网

Requests:一个HTTP库

Requests是一个将处理HTTP请求变得轻而易举的库。

同样是通过 pip 安装它:

  1. $ pip install requests

下面是一个例子:

  1. >>> import requests
  2.  
  3. >>> r = requests.get('https://api.github.com', auth=('user', 'pass'))
  4.  
  5. >>> r.status_code
  6.  
  7. 204
  8.  
  9. >>> r.headers['content-type']
  10.  
  11. 'application/json'
  12.  
  13. >>> r.content
  14.  
  15. ...

Requests文档

Flask:一个web开发的微框架

Flask是一个基于Werkzeug和Jinja2的微框架。

通过 pip 安装:

  1. $ pip install Flask

这是一个简单的例子:

  1. from flask import Flask
  2.  
  3. app = Flask(__name__)
  4.  
  5.  
  6.  
  7. @app.route("/")
  8.  
  9. def hello():
  10.  
  11. return "Hello World!"
  12.  
  13.  
  14.  
  15. if __name__ == "__main__":
  16.  
  17. app.run()

可以这样运行它:

  1. $ python hello.py
  2.  
  3. * Running on http://localhost:5000/

Flask官网

Django:一个全栈式web开发框架

Django是一个全栈式web开发框架。它提供了ORM,HTTP库,表单处理,XSS过滤,模板和别的特性。

通过 pip 安装:

  1. $ pip install Django

Django官网 查找更多信息。

Fabric:简化SSH的使用并部署系统管理员任务

Fabric是一个命令行工具用来简化程序对于SSH的使用或运行系统管理员任务。
它提供了一个基本套件可以执行本地或远程shell命令(正常或通过sudo),上传/下载文件,以及其他辅助功能,如提示用户输入,或中止执行的操作。

可以通过 pip 安装:

  1. $ pip install fabric

这是一个通过Fabric写的任务:

  1. from fabric.api import run
  2.  
  3.  
  4.  
  5. def host_type():
  6.  
  7. run('uname -s')

你可以在一台或多台服务器上执行这个命令:

  1. $ fab -H localhost host_type
  2.  
  3. [localhost] run: uname -s
  4.  
  5. [localhost] out: Linux
  6.  
  7.  
  8.  
  9. Done.
  10.  
  11. Disconnecting from localhost... done.

Fabric官网

SciPy:一个科学计算库

如果你的工作涉及科学和数值计算,SciPy的是您不可或缺的重要工具。

SciPy官网这样介绍:


SciPy的(读做“Sigh Pie”)是数学、科学和工程方面的开源库。
这也是Python在数值计算方面非常优秀的一个库。
SciPy的库依赖于NumPy,它提供了方便快速的N维矩阵操作。
SciPy库与NumPy中的矩阵兼容,并提供了许多用户友好且高效率的数值程序,如数值的积分和优化。
同时,他们运行在所有流行的操作系统上,安装快速,并且都是免费的。NumPy和SciPy易于使用,但功能强大,足以满足一些世界领先的科学家和工程师。
如果您需要在电脑上处理数字、显示或公布结果,试试SciPy吧!

SciPy

PEP 8:Python风格指南

虽然它本身不是一个软件工具,但它却是Python一个重要的资源。

PEP 8是一个描述Python发行版中基本库的编码约定的文档。
这份文档的希望能够约定全世界Python开发者的代码布局,变量、类、函数的命名规则。
请确保你了解它,并遵循它。他将在未来的Python使用中带来相当多的益处。

PEP 0008

强大的Python标准库

Python的标准库涵盖非常广泛,提供各种各样的功能。
该库包含的内置模块(使用C编写的)提供了访问系统的功能,如文件I/O,
并且存在大量Python编写的模块,他们提供标准化的解决方案去解决日常的编程中出现的许多问题。
这些模块都明确地抽离平台的细节,提供平台无关的API,旨在加强Python程序的跨平台可移植性。