Python
我和Python
一直想找门脚本语言玩玩。感觉perl有些太古董,ruby给人的感觉是太爆发户,python看上去还算是可靠些。不过刚用python的时候对它并没太多的感觉,后来看到了Django自动生成的管理后台。这个管理后台给我的感觉实在是太棒了。因为使用Django,对python也逐步的熟悉了起来。
python网站
Python官网
Python官网,无需要更多介绍。 链接
啄木鸟开源社区
国内最优秀的python网站。 链接
python-cn
国内的python的新闻组。国内活跃的python高手,大多在里面混。 链接
python的web开发框架
Django
在python的web开发框架中,这个算是最有潜力的之一,也是我目前选择的Django开发框架。Django可以自动生成一个很帅的管理后台,当初我就是被这个管理后台所吸引。当然这个管理后台的局限性还是不小。在系统日趋复杂后,这个管理后台的几乎没多少用处。
Django提供了完整的一套web开发的解决方案。默认带了模板、ORM等组件,不用你再去东拼西凑。有人可能不喜欢这样一体化的解决方案,不过我已经受够了java那些成堆开发框架,对这样一体化的东西还是比较喜欢。
虽然Django给我的总体感觉还不错,不过也有不太满意的地方。Django的模板系统太弱,无法在模板系统里直接书写python。虽然这样加强了规范,但对于我这样程序和网页一起写的人来说限制太多。好在django的模板系统习惯后也不算太别扭。 官网
TurboGears
TG是除Django外另一个有潜力的python web开发框架,同时和django一体化方面不同的是,TG提供了良好的可定制性。TG就是将一些优秀的ORM、模板系统等东西组合到一起整成一个WEB开发框架。它给你多种选择,你可以自由的选择模板系统和ORM,实现自己喜欢的开发组合。没太用过这东西,所以具体好不好用就不知道了。我觉得灵活性在一定程度上会使系统的统一性受到损害。如果我真的想这么灵活,我可以直接去用JAVA,还用TG做啥。 官网
pylons
这东西BT的官网在用,想来应当也不会太坏吧。pylons有些类似TG,不过据说思想还更先进。TG2也计划常用pylons做内核进行重写。此外,如果你对ROR的开发模式着迷的话,可以看看这东西,长得和ROR实在是太象了
因为担心Django的性能问题,曾研究过pylons。研究后发现这东西真的是非常不好完。为了正常使用必须安装好几个东西,而且各个组件之间还可能出现版本不兼容的问题。教程非常的差。如果你完全按照他的step by step做,你别想将例子跑起来。因为ORM是第三方的,你必须去参考ORM自己带的文档。 官网
GAE(Google App Engine)
这个勉强算是吧。Google出的免费WEB服务器,目前还只支持python。GAE可以在上面部署自己的开发框架。不过GAE的限制比较多,我虽然申请了,但还没去用过。 官网
Zope/Plone
老牌的web开发框架,功能强大,不过学习起来也并不轻松。其中Plone其实应当说是个CMS。 Zope官网 Plone官网
其他/成功的Python Web应用
python的web开发框架实在太多,多如牛毛。主要是用python写一个web开发框架实在是太容易,如果你愿意,不用一天时间你就可以写一个自己的。
除非了上面介绍的外,下面是我知道的一些python web应用。
Python类库
MySQL for Python
python的mysql数据库驱动。如果你要在python中使用mysql必须安装这东西。 官网
PIL(Python Imaging Library)
Python图形库,提供给python图形处理能力,它支持很多种格式的图片,具有强有力的图形图片的处理能力。在 老照片里,我用这个库进行图片的缩放处理。 官网
Beautiful Soup
分析网页内容可以使用python自带的sgmllib,不过我觉得这东西不太好用。正则表达式虽然强大,但在很多时候要写出一个符合要求的正则表达式也并非易事。试试Beautiful Soup吧,这东西让网页的解析变得容易了挺多。 官网
PyLucene
搜索组件,用GCJ/JCC移植JAVA版的 Lucene。看上去还不错,不过真正用起来其实并不是太好玩。GCJ版的在线程内使用有问题,必须继承pylucene自己所特有的线程类。JCC必须在安装有JAVA的环境里运行。此外,由于多了GCJ/JCC这个中间过程,PyLucene扩展起来并不方便。 官网
Xapian for Python
搜索组件,Xapian的python绑定,据说在windows下有些问题。 官网
相关工具
Kodos
一个python的正则表达式调试器。这是我见过的最好用的正则表达式调试器。对我来说写正则表达式是一件挺痛苦的事,有了这东西让痛苦减轻了不少。 官网
python的IDE
Vim
Vim是一个通用编辑器,用习惯后用Vim写python也不算太坏。 官网
UliPad
国内python大侠limodou的力作,很好用的python开发环境,我有在用。官方建议使用SVN版本。 官网
PyDev Extensions
Eclipse的python开发插件。本身的功能还比较弱,但安装了收费版的Pydev Extensions后功能增强不少。Pydev Extensions不注册也可以正常使用,不过会定时弹出注册提示框。 PyDev官网 PyDev Extensions官网
BOA
一个类似Delphi的python集成开发环境,支持RAD的界面开发。用来做一些简单的GUI开发似乎还不错。 官网
著名python应用
MoinMoinWiki
广泛应用的wiki系统。 官网
Trac
Trac是个项目管理系统,带有一个wiki系统,并支持SVN绑定。本站就是使用trac搭建的。 官网
备注: Redmine是一个类似Trac的ROR项目。在我看来Redmine和Trac相比在某些方面还更完善(如有专门的论坛系统等)。
python实现
python在一定程度上说只是一个规范,因此会有不同的实现。
cPython
我们常说的python通常都是指cpython,用C实现的python。 官网
IronPython
使用.NET实现的python,运行在.NET平台上。这个算是MS官方支持的项目了,因此完成度也还不错。 官网
Jython
python的Java实现。虽说SUN开始支持Jython,但这个东西似乎一起都不太火。roadmap上说要出支持2.5规范的Jython,但目前能找到的还是只支持Jython 2.2.1。 官网
pypy
这算是比较另类的一个项目了,使用python实现的python。主要用处是将python编译成其他语言,比如cpp/javascript等。这样可以通过编译成c来加速程序运行,编译成javascript来使用python写javascript。我还曾关注过这东西,但似乎使用起来并没有想象中的好。 官网
