如果你已经完全读完了这本书并且也实践着编写了很多程序,那么你一定已经能够非常熟练自如地使用Python了。你可能也已经编写了一些Python程序来尝试练习各种Python技能和特性。如果你还没有那样做的话,那么你一定要快点去实践。现在的问题是“接下来学习什么?”。

我会建议你先解决这样一个问题:创建你自己的命令行 地址簿 程序。在这个程序中,你可以添加、修改、删除和搜索你的联系人(朋友、家人和同事等等)以及它们的信息(诸如电子邮件地址和/或电话号码)。这些详细信息应该被保存下来以便以后提取。

思考一下我们到目前为止所学的各种东西的话,你会觉得这个问题其实相当简单。如果你仍然希望知道该从何处入手的话,那么这里也有一个提示。

提示(其实你不应该阅读这个提示) 创建一个类来表示一个人的信息。使用字典储存每个人的对象,把他们的名字作为键。使用cPickle模块永久地把这些对象储存在你的硬盘上。使用字典内建的方法添加、删除和修改人员信息。

一旦你完成了这个程序,你就可以说是一个Python程序员了。现在,请立即寄一封信给我感谢我为你提供了这本优秀的教材吧。是否告知我,如你所愿,但是我确实希望你能够告诉我。

这里有一些继续你的Python之路的方法:

图形软件

使用Python的GUI库——你需要使用这些库来用Python语言创建你自己的图形程序。使用GUI库和它们的Python绑定,你可以创建你自己的IrfanView、Kuickshow软件或者任何别的类似的东西。绑定让你能够使用Python语言编写程序,而使用的库本身是用C、C++或者别的语言编写的。

有许多可供选择的使用Python的GUI:

  • PyQt 这是Qt工具包的Python绑定。Qt工具包是构建KDE的基石。Qt,特别是配合Qt Designer和出色的Qt文档之后,它极其易用并且功能非常强大。你可以在Linux下免费使用它,但是如果你在Windows下使用它需要付费。使用PyQt,你可以在Linux/Unix上开发免费的(GPL约定的)软件,而开发具产权的软件则需要付费。一个很好的PyQt资源是《使用Python语言的GUI编程:Qt版》请查阅官方主页以获取更多详情。

  • PyGTK 这是GTK+工具包的Python绑定。GTK+工具包是构建GNOME的基石。GTK+在使用上有很多怪癖的地方,不过一旦你习惯了,你可以非常快速地开发GUI应用程序。Glade图形界面设计器是必不可少的,而文档还有待改善。GTK+在Linux上工作得很好,而它的Windows接口还不完整。你可以使用GTK+开发免费和具有产权的软件。请查阅官方主页以获取更多详情。

  • wxPython 这是wxWidgets工具包的Python绑定。wxPython有与它相关的学习方法。它的可移植性极佳,可以在Linux、Windows、Mac甚至嵌入式平台上运行。有很多wxPython的IDE,其中包括GUI设计器以及如SPE(Santi’s Python Editor)wxGlade那样的GUI开发器。你可以使用wxPython开发免费和具有产权的软件。请查阅官方主页以获取更多详情。

  • TkInter 这是现存最老的GUI工具包之一。如果你使用过IDLE,它就是一个TkInter程序。在PythonWare.org上的TkInter文档是十分透彻的。TkInter具备可移植性,可以在Linux/Unix和Windows下工作。重要的是,TkInter是标准Python发行版的一部分。

要获取更多选择,请参阅Python.org上的GUI编程wiki页

GUI工具概括

不幸的是,并没有单一的标准Python GUI工具。我建议你根据你的情况在上述工具中选择一个。首要考虑的因素是你是否愿意为GUI工具付费。其次考虑的是你是想让你的程序运行在Linux下、Windows下还是两者都要。第三个考虑因素根据你是Linux下的KDE用户还是GNOME用户而定。

未来的章节

我打算为本书编写一或两个关于GUI编程的章节。我可能会选择wxPython作为工具包。如果你想要表达你对这个主题的意见,请加入byte-of-python邮件列表。在这个邮件列表中,读者会与我讨论如何改进本书。

探索更多内容

  • Python标准库是一个丰富的库,在大多数时候,你可以在这个库中找到你所需的东西。这被称为Python的“功能齐全”理念。我强烈建议你在开始开发大型Python程序之前浏览一下Python标准文档

  • Python.org——Python编程语言的官方主页。你可以在上面找到Python语言和解释器的最新版本。另外还有各种邮件列表活跃地讨论Python的各方面内容。

  • comp.lang.python是讨论Python语言的世界性新闻组。你可以把你的疑惑和询问贴在这个新闻组上。可以使用Google群在线访问这个新闻组,或加入作为新闻组镜像的邮件列表

  • 《Python实用大全》是一个极有价值的秘诀和技巧集合,它帮助你解决某些使用Python的问题。这是每个Python用户必读的一本书。

  • 《迷人的Python》是David Mertz编著的一系列优秀的Python相关文章。

  • 《深入理解Python》是给有经验的Python程序员的一本很优秀的书。如果你已经完整地阅读了本书,那么我强烈建议你接下来阅读《深入理解Python》。它覆盖了包括XML处理、单元测试和功能性编程在内的广泛的主题。

  • Jython是用Java语言实现的Python解释器。这意味着你可以用Python语言编写程序而同时使用Java库!Jython是一个稳定成熟的软件。如果你也是一个Java程序员,我强烈建议你尝试一下Jython。

  • IronPython是用C#语言实现的Python解释器,可以运行在.NET、Mono和DotGNU平台上。这意味着你可以用Python语言编写程序而使用.NET库以及其他由这三种平台提供的库!IronPython还只是一个前期alpha测试软件,现在还只适合用来进行试验。Jim Hugunin,IronPython的开发者,已经加入了微软公司,将在将来全力开发一个完整版本的IronPython。

  • Lython是Python语言的Lisp前段。它类似于普通的Lisp语言,会被直接编译为Python字节码,这意味着它能与我们普通的Python代码协同工作。

  • 另外还有很多很多的Python资源。其中比较有趣的有Daily Python-URL!,它使你保持与Python的最新进展同步。另外还有Vaults of ParnassusONLamp.com Python DevCenterdirtSimple.orgPython Notes等等。

概括

现在,我们已经来到了本书的末尾,但是就如那句名言,这只是 开始的结束 !你现在是一个满怀渴望的Python用户,毫无疑问你准备用Python解决许多问题。你可以使你的计算机自动地完成许多先前无法想象的工作或者编写你自己的游戏,以及更多别的什么东西。所以,请出发吧!