Python 常用包

转自: http://fsldn.blog.163.com/blog/static/4546432009012111714900/
  • wxPython

如果你之前是 windows 程序员,用 MFC 或者 WIN32API 开发界面程序,那进入 Python 国度最好的 GUI 选择应该是 wxPython。它是 wxWidgets 的 Python Bind,与 wxWidgets 的开发完美同步,最为重要的一点是它的消息机制与 MFC 颇为相似,以前在 MFC 的经验完全可以稍作变化就套用在 wxPython 上面。在 WIN32 开发中,最讨厌的一环肯定有 WM_SIZE 消息的处,在主窗口大小变化的时候,保持控件布局在 WIN32 是一件麻烦事。这件事情 wx 解决得非常完美,它的sizer 概念可以让我轻松地在不同窗口尺寸的情况下保持完美的控件布局。另外如果你已经讨厌了 MFC 的 doc-view 模型,wx 也可以给你一个新的选择;如果你非常喜欢 doc-view 模型,放心,在 wx 中仍然可以轻松实现,以前的思想依然可以在这里发挥余热。

wxPython 有两个封装,一个 PythonCard,另一个是 dabo。前者是 wxPython 的有限封装,不支持 wxPython 的全部特性,它的目标是让 wxPython 更加 Pythonic。后者比 PythonCard 要庞大不少,确切来说,它应该是一个三层架构的 C/S 模式的开发框架。如果你想开发基于数据库的应用(如 MIS、ERP 等)用 dabo 是一个不错的选择;另外,如果你之前习惯了 VB、VFP、Delphi 等 RAD 开发环境,dabo 并不比这些昂贵的工具差多少哦!

  • py2exe

按照邪恶的 windows 思维,编写的应用如果不编译出一个 .exe 文件恐怕是算不得“软件”的,py2exe 作用正是把你的 .py 脚本变成 .exe 文件,通常它会把脚本打包到一个 .zip 文件中去,但也你可以通过修改 setup.py 脚本把所有的脚本、依赖的 dll 等全部打包到一个 exe 中去,看起来跟 VC、VB 编译出来的程序没有什么两样!

如果你的客户需要在 windows 下使用你的应用程序,py2exe 是你不可或缺的工具。我就是用它打包由 wxPython 写的小工具给公司里的游戏策划用的。

  • psyco

脚本的执行效率多少有点差强人意,虽然优化起来并不是难事,但如果有简单的方法,近乎不用修改源代码,那当然值得去关注一下。psyco 的神奇在于它只需要在代码的入口处调用短短两行代码,性能就能提升 40% 或更多,真可谓是立竿见影!

如果你的客户觉得你的程序有点慢,敬请不要急着去优化代码,psyco 或许能让他立即改变看法。psyco 堪称 Python 的 jit,有许多潜力可以挖掘,如果剩下来给你优化性能的时间已经不多,请马上去阅读它的手册,有许多招儿轻松优化性能。

  • PIL

PIL 是 Python 的图像处理库,我的看法是强到没得说,简单到没得说。它可以打开数十种图像格式,常见的 jpg/png/bmp 等当然不在话下;此外还提供许多图像处理函数,如图像增强、滤波算法等,详情可以参考我以前的一篇文章《用Python 做图像处理》(http://blog.csdn.net/lanphaday/archive/2007/10/28/1852726.aspx)和《计算图像相似度》(http://blog.csdn.net/lanphaday/archive/2008/04/24/2325027.aspx)。

  • MySQLdb

这是 Python 对开源数据库 Mysql 的支持,官网在http://sourceforge.net/projects/mysql-python。支持 Mysql 3.23-5.1 全系列版本,Python 版本的要求是 2.3-2.5。MySQLdb 是 Python DB API-2.0 的实现,现在已经很成熟了。最新的版本是 1.2.2 。

如果从事服务器开发,那少不得跟数据库连接池打交道,这时你可以使用 DBUtils 或 jonpy 两个开源程序库。其中 DBUtils 是一套数据库连接池库,而 jonpy 则包括了 CGI 以及数据库连接池等多个功能,请在阅读手册后选择合适的自己库。

  • pyprocessing

Python 解释器里的 GIL(全局解释器锁)使得 Python 在多核时代有点尴尬——这个支持原生线程的脚本语言竟然不能通过多线程利用多个 CPU 内核同时并发计算。pyprocessing 没有尝试去除 GIL,而是剑走偏锋,尝试从多进程的方式来帮助 Python 走出困境。结果就是使用 pyprocessing 创建进程和进程间通信不仅像使用内置的 threading 模块那么简单,甚至还更加简单。pyprocessing 不仅可以通过本机 socket 和管道进行通信,而且封装得极为完美,它的 Queue 实现用起来跟内置的 Queue 没啥两样,但它是一个进程间共享的队列哦!

pyprocessing 在 py2.6 和 py3.0 中已经作为内置模块了,也算是开发社区对 pyprocessing 项目的肯定吧。如果你用 Python 开发服务器应用,特别是网络游戏这样的应用,pyprocessing 怎么可以不去关注一下!

***************************************************
  常用的python模块

***************************************************
  2008-03-24 16:15
  文章原地址:http://kenneth.yculblog.com/post.2812457.html
  来自:歪酷博客 作者:Kenneth ’s Blog 时间:2008-01-16

  adodb:我们领导推荐的数据库连接组件

bsddb3:berkeleydb的连接组件

cheetah-1.0:我比较喜欢这个版本的cheetah

cherrypy:一个web framework

ctypes:用来调用动态链接库

dbutils:数据库连接池

django:一个web framework

docutils:用来写文档的

dpkt:数据包的解包和组包

mysqldb:连接mysql数据库的

py2exe:用来生成windows可执行文件

pylons:我们领导推荐的web framework

pysqlite2:sqlite的连接组件

pythonwin:python的windows扩展

setuptools:无奈,peak的一套python包管理机制

sqlalchemy:数据库连接池

sqlobject:数据库连接池

twisted:巨无霸的网络编程框架

wxpython-2.6:因为需要保持与linux相同的版本才没用最新的,gui编程框架

pypcap:抓包的

python-dnet:控制网络安全的其他设备

pyevent:python的事件支持

pydot:画图的,graphiz

sendpkt:python发包

simplejson:json的支持

dpkt:raw-scoket网络编程

cx-oracle:连接oracle的好东东

mechanize:爬虫连接网站常用

pil:图像处理工具包 reportlab for pdf 文件。

pyqt4 for gui界面

feedparser: rss解析

chardet:编码检测

scons: 项目构建工具,写好了模板用起来还是很方便的

scapy: 网络包构建分析框架,可编程的wireshark,有兴趣的google “silver needle in the skype”

pefile: windows pe文件解析器

winpdb: 自己的程序或者用别的库不太明白的时候就靠它了

pywmi: 省了好多折腾功夫

pylint: 培养良好的编码习惯

 

 

下面是准备用的,不做评论:

pygccxml

pyparsing

pymacs

idapython

paimei

pysvn

pylucene

wikidpad

1.python操作pdf文件

2.python連接postgresql引擎

3.python的.net2.0的曲線表

http://pybrary.net/

—————————————————–

1.python image libary

2.tkinter libary

http://www.pythonware.com/index.htm

—————————————————–

1.karrigell

http://karrigell.sourceforge.net/

—————————————————–

1.the standard python libary

http://effbot.org/librarybook/

—————————————————–

1.python操作pdf的libary

http://reportlab.org/

—————————————————–

1.python curl

libary http://pycurl.sourceforge.net/

—————————————————–

1.urlgrabber

http://linux.duke.edu/projects/urlgrabber/

—————————————————–

1.mysql-python

http://mysql-python.sourceforge.net/

—————————————————–

1.pyscripter

2.python for delphi

http://mmm-experts.com/products.aspx

—————————————————–

1.python cookbook

http://aspn.activestate.com/aspn/python/cookbook/

—————————————————–

1.pygame

http://www.pygame.org/news.html

——————————————————

1.pymedia

http://www.pymedia.org

——————————————————

1.pydbf

http://dbfpy.sourceforge.net/

——————————————————

1.pexpect

http://pexpect.sourceforge.net/

——————————————————

1.dabo desktop application frameworks

http://dabodev.com/

——————————————————

1.pyserial

http://pyserial.sourceforge.net/

http://wiki.woodpecker.org.cn/moin/pyserial

—————————— ————————

1.python’s doc

http://wiki.woodpecker.org.cn/moin/pythonzhdoc

——————————————————

1.the visual module of vpython(3d)

http://vpython.org/index.html.

 

 

你可能感兴趣的:(python)