??xml version="1.0" encoding="utf-8" standalone="yes"?>
我们更应该将php看作是一个语aQ和python同样优秀Q当然php和python的定位不同,也就是因L(fng)定位Q而让Z生的错觉Q!Q如果Php自己定位如python一Pq在语言q个U别更脓(chung)q面向对象的思维模式Q那Python也许׃?x)如此的火爆Q?BR>
看来php之父q没有将语言向python靠拢的意思,也就是说q样的语a目前的生存空间仅仅只限于服务器端的脚本!q是它的领地Q但除非是它闭着眼镜Q不然没有h?x)愿意看到html的代码里写这<?php>q样的代码!q就好比是在没有webwork 、strutsq样优秀的web框架出现之前Qjsp让h恶心的原因,如果Php的领域没有这L(fng)MVC框架出现Q那我情愿还是选择jsp!!Z学习(fn)我会(x)选择PythonQ但永远不会(x)选择php......
告诉我你知道的php世界里优U的web框架Q也许我?x)改变看法!但我不?x)选择重新发明轮子Q!
]]>
The page describing this project is here.
The current version of the book is 0.1. This is a preliminary release; please note that not all the chapters in the book have been translated.
The source code is in the download package. When you unzip everything (remember to use the -a flag if you're on Unix), the code will be put into subdirectories for each chapter.
This is not an introductory Python book. This book assumes you've learned the basics of Python elsewhere. I personally like Learning Python by Lutz & Ascher, from O'Reilly. Although it does not cover all the Python 2.0, 2.1 and 2.2 features that I use in this book, most books don't at this point.
However, Learning Python is not exactly a beginning programmer's book, either (although it's possible if you're dedicated). If you're just getting started with programming you might try the free, downloadable A Byte of Python.
如果(zhn)是刚刚开始了解Python~程语言Q你现在需要一套Python~程软gQ这栯够让你更好的掌握它。正式的Python软g中包括了E序指o(h)行,囑Ş化的用户界面Q范例程序代码以?qing)一整套的相x件。还有另外一个版本的Python软gQ它的正式名U是ActivePython。这个叫?A >ActivePython的版本是?A >ActiveState公司提供的?A >ActiveState是生产Python软g工具以及(qing)相关软g的一家公司。但是,q两U不同的版本区别何在呢?
ActivePython版本对于WindowsQLinux, 以及(qing)Solaris操作pȝ的二q制形式是可以直接用的。但是常规的Python软g虽然比ActivePython支持的操作系l要E微多一些,但是却只能够作ؓ(f)q些操作pȝ的源代码来进行下载。ActivePython版本比常规的Python软g增加了一些内容,q且附带有更大的标准资源库。如果对于Python软g来说(zhn)仅仅还处于入门阶段的话Q我推荐(zhn)应该蟩q对ActivePython的学?fn)?/P>
当你安装了Python软g之后Q你?x)希望掌握它的编E方法,除非你只是喜Ƣ单U的在你的桌面上增加一个很用的可爱快捷方式而已。在国际互联|上已经有了不少关于Python~程语言的用指南,L(fng)下面的这些内容:(x)
如果(zhn)已l开始接触Python~程语言q且已经有了一定的使用Pythonq行E序设计的经验之后,(zhn)可能会(x)在这个过E中产生一些问题,或者?zhn)会(x)希望得到有关Python~程语言更多的相兌料。ؓ(f)了满xq方面的需要,我会(x)向?zhn)提供一些网l上的资源作为?zhn)的文献资料库。下面列出的q些条都是其中比较好的一些网l资源:(x)
Python~程语言拥有极好的扩充性,q且是一U很好的脚本语言。Python作ؓ(f)~程语言能够非常好的植入大量的应用Y件。这是近来有关Python~程语言zd的中心内容,我们能够从theKompany中的VeePee了解到更多的信息?A >VeePee是一U用图形用L(fng)面的脚本环境Q这是被设计用来植入Linux GNOME或?KDE应用软gQƈ且能够对q两U应用Y件提供脚本支持。我要一再提C?zhn)的是QActiveState对于?NET中用Python~程语言拥有l过实验室检验的具体l验。这样就允许Python~程语言能够l承q且讉K?NET框架中的对象Qƈ且ؓ(f)其它?NET~程语言提供了一U脚本支持?/P>
像大家知道的那P我是一个沉q于IDE的hQ当我编制程序的时候,如果有code completionQ弹出式对话框,菜单以及(qing)工具条,q样我才?x)感觉舒服一些。我清除的知道在q个世界上还有许许多多像我一L(fng)人。很q运的一Ҏ(gu)Q对我们q些人来_(d)虽然我们沉迷于此Q但是这个世界上有数量繁多的非常优秀的Python软g的IDE能够供我们用,虽然其中的相当大一部分q不是免费的Q?/P>
在本文中提到的这些资源能够帮助你正式的开始用Python语言q行E序设计的工作,q且q能够帮助你扑ֈ获取q些资源的途径。你只要C的一Ҏ(gu)Q没有h喜欢Spanish InquisitionnQ西班牙宗教法庭Q在1480-1834q之间存在的天主教法?以残酯宛_端著Uͼ(j)。你不会(x)真的期望只是通过一文章就能够获取所有有关Python~程语言的知识吧Q这U愿望是非常不切合实际的?/P>
Z么要?PythonQ?/B>
{:(x)好玩。就是这L(fng)单。无论是?Python q是?PythonQ都是一件赏心乐事。当你写 shell scripts 写得鬼哭号Ӟ当你?perl scripts 改得头昏脑涨Ӟ有没有想q写 script 其实是很好玩的一件事。你可能从来不相信当你写一套严肃而功能强大的E式Q你可以用一个如此好玩的E式语言来开发。更难o(h)你相信的是,q在程式开发的后期Q甚x几个月以后当你再ơ想修改它的时候,你依焉?x)觉得是一件好玩的事?
Python 能做什么?
{:(x)倒不如问QPython 不能做什么? Python 已经差不多把一?scripting language 作ؓ(f)整合工具 (gluing tool) 的强大功能完全发挥了出来QQ何程式,只要有个l?Python 用的接口QPython 可以把它据为己用,和其他的E式一块用。而且
· Python 有发?XML 的大型函式库Qƈ开始有大型pȝ的构建初型?· ?Python 写的 ZopeQ可以用来架设整个网?· Python 语言自己是用 C 来写的,但现已有用纯 Java 写的 Python 语言实现Q近期更有用微Y .NET 方式实现?Python 译器,由此证明?Python 语言定义的高度完整?· Python 已移植到许多的操作^CQ包?Linux、Windows、HP、Solaris、Irix、AIX、BeOS、甚x Cray。几乎和 Perl 一样多?·׃ Python 本n?object orientedQ所以很Ҏ(gu)?C++QJava {整合,其?Visual 当道?Windows pȝ。这点要?Perl 好许多?
和其他语a的比?/B>
一般的说法的这L(fng)Q?
但事实上我个人的感受最q是它比较好玩的说法。虽然像是不认真Q但一U可以让人寓~程于娱乐的E式语言Q正是程式语a的设计终极嘛?
Python 的作者是数学Ӟ?Perl 的作者则是个天才E式员。因此这两种语言的风格回异:(x)Python 语法铺排的很整洁Q相同功能的E式׃同h写出来的样子都很像,q些一致的、前后呼应的E式对于pȝ的拓展和整合十分重要。因此阅?Python 的程式感觉上很畅。Perl 的语法则很浓~,而且l常?x)有些意想不到的巧思,可惜q些每每体现在字里行间的妙着Ҏ(gu)个程式的可读性带来负面媄(jing)响。因而一个短的 Perl E式往往令h׃释手Q但当它来长时M(x)变成E式员的永痛?
至于PHPQ因它的发展历史一直是围绕着 web pageQ所以做|页设计是十分方便的Q但是写一般的工作则^qx奇。比如说控制执行l,处理q程间的讯息传送以致做囑Ş用户介面{都久奉Q这是因Z WEB 的角度,q些q不重要Q图形介面,HTML 己l是了,而程式的执行和互相合作则?Web Server 要考虑的事?
我推?Python 是因为我觉得它比较适合用作一般性程式编写和pȝ整合Q尤其是在科学和教育领域中。我q不是说大家没本事学?PerlQ只是很多时候我们ƈ不需要用?Perl 的精妙之处,更多的时候用一个清楚直接的描述要比用一个智力题U的招数更有好处。除了语法的设计较ؓ(f)整洁外,Python q有很好的对?sh)脑囑Ş的支_(d)也有十分快的数学阵列模组?
而它最方便的地Ҏ(gu)很容易的把其他的E式整合在一P譬如说你有个几年前写?C E式Q只要修改很的一部䆾可以编译成 Python 可用的模l。事实上已经有自动帮你做q些修改的程式了Qh们也׃ؓ(f)许多各种好用的函式库做出?Python bindingQ如 OpenGL、GTK、QT、GD、甚至于解方E组的、找频谱的都有?
而在使用了一D|间后Q我开始体?x)下面的说法Q?
‘Python 是设计出来的Q?PHP ?Perl 是篏U而来的。?/B>
虽然它们各自都有cM的功能,但在使用时会(x)发现 Python 的写法L较ؓ(f)一_(d)q是因ؓ(f) Python 从一开始便考虑了它整个的架构。相反,?Perl ?PHP 则有很多功能都是后来慢慢加上ȝQ所以到后期 Perl 的发展越来越难,以致 Perl 6 几乎要从头设计。?PHP 则现在才开始头痛于构思新的函数名U?(所有的 PHP 函数都是全域定义的,所以每加一个函数都有可能和已经定义了的名字重复)。ؓ(f)了解决问题,它们各自都开始注意加?class, object 的支援。但很明昄是,在程式成熟后再加q些基本功能?x)o(h)整个语言的框架变得头重脚轻,无论是写hq是用v来都有些不稳的感觉?
然?Python 在一开始的时候就把这些考虑了进去:(x)Python Ҏ(gu)是以物件导向作计的基础。因此在加了许许多多的功能和模组后,它的风采仍旧Q清C然?
好话说了不少Q光说不l可是不行。参考程式示范区的实际例子,看看 Python 到底是怎样一回事?/P>