Python的一大特色是其丰富的模块,基本上只要你能想到的常见的开发需求,都能找到别人已经实现的库直接使用,或者相关工具或则框架来辅助实现。但这对于新人来说也是一个问题:这么多库,我要从哪里学起?怎样才能记住这些库的用法?
GUI 图形界面
Tkinter : Tkinter默认的图形界面接口
wxPython: Python首选的GUI库
PyGTK: PyGTK是一套GTK +GUI库的Python封装程序,它是GNOME项目的一部分。它提供了用于使用Python构建桌面应用程序的综合工具。也可以使用其他流行的GUI库的Python绑定。
PyQt: 用来Python的Qt开发库。Qt就是实现了KDE环境的那个库,由一系列模板组成,有qt,qtcanvas,qtgl,qqtnetwork,qtsql,qttable,qtui,and,qtxml,包含有300个类和超过5750的函数和方法。
PySide:PySide是Qt界面框架对Python语言的绑定,可以使用Python语言和Qt进行界面开发,Python程序员开发桌面程序。
Web框架
Django:Django是一个开放源代码的Web应用框架,由Python写成。采用了MTV的框架模式,即模型M,视图V和模版T
web2py:web2py具有非常良好的架构设计和代码实现,其不依赖于除了Python标准库之外的任何第三方软件包,另一方面web2py的架构使得其很容易和第三方软件包协作。web2py提供了一个基于web的IDE环境,您可以在这个环境中创建、修改、部署以及管理您的程序,大大提高您的工作效率。
Flask:Flask框架的主要特征是核心构成比较简单,但具有很强的扩展性和兼容性,程序员可以使用Python语言快速实现一个网站或Web服务。
Bottle: Bottle是一个Python Web框架,整个框架只有一个文件,几十K,却自带了路径映射、模板、简单的数据库访问等web框架组件,确实是个可用的框架。初学web开发可以拿来玩玩,其语法简单,部署也很方便。
tornadoweb :tornadoweb是一个Python Web框架和异步网络库,最初是在FriendFeed上开发的。
webpy: webpy是python基础的web框架,上手简单,基本上有15分钟左右就可以初步了解并写一些简单的demo。
cherrypy:是一个基于python的面对对象的HTTP框架,使用Cherrpy的面对对象 Web Application是非常轻松的。
科学计算
numpy: 提供了许多高级的数值编程工具,如:矩阵数据类型、矢量处理,以及精密的运算库。专为进行严格的数字处理而产生。多为很多大型金融公司使用,以及核心的科学计算组织如
SciPy:建立在Numpy的基础之上,用于数值运算.具有很多高效操作,如数值积分、优化、统计、信号处理,以及图像处理功能。
pandas:Pandas]是python的一个数据分析包,目前由专注于Python数据包开发的PyData开发team继续开发和维护,属于PyData项目的一部分。
密码学
cryptography:攻击者不知道信息的内容
Hashids:是一个小型的开源库,它从数字生成简短的、惟一的、非顺序的id。它将像347这样的数字转换成像“yr8”这样的字符串,或者像[27,986]这样的数字数组转换成“3kTMd”
Paramiko:paramiko最开始是用Python对ssh进行的一个封装,封装就是对一些面向对象的方法,就是把变量和方法给他包装起来。提供一些外部的api,给大家很方便的使用它