从C#到Python —— 5 模块和包
2010-09-30 22:41:39 来源:WEB开发网如果没有定义__all__,from pack import * 不会保证所有的子模块被导入。所以要么通过__init.py__,要么显式地import 以保证子模块被导入,如:import pack.m1, pack.m2, pack.m3。
5.3 本章小结
本章介绍了Python中模块与包的使用方法,要点如下:
(1) 模块是一个可以导入的Python脚本文件;
(2) 包是一堆按目录组织的模块和子包,目录下的__init__.py文件存放了包的信息;
(3) 可以用import, import as , form import 等语句导入模块和包。
总之,模块与包是在物理上组织Python代码复用的一种有效方式,它有点类似于C#中的程序集(Assembly)。初学Python不一定要会自己建立模块和包,但一定要学会使用各种包,这正是Python的强大之处:Python带着各种各样的battery。当你想完成一项功能时,最好先去搜索是不是有相关的包能够复用(多数情况下是这样的,因为在各种领域都有太多的人在为Python作着贡献)。而且,绝大多数Python包都是开源的,研读优秀的代码也是提高编程能力的一种有效途径。
进一步阅读的参考:
《从C#到Python》系列连载到今天就全部写完了,非常感谢各位的支持、鼓励以及批评,使我能够不断完善和提高。读完这个连载,在Python的语法上应该够应付一阵了,当然结合具体的应用领域,还是有很多东西需要不断学习,在此向大家推荐一些有用的读物:
[1] 科学计算方面:这个是我的应用Python的主阵地,推荐HYRY Studio的《用Python做科学计算》(见http://pyscin.appspot.com/html/index.html),我个人认为非常优秀的一本原创著作(这么好的书不知为何不正式出版,钦佩作者的rp !)。
[2] GUI开发方面:如果你用wxPython,那么肯定要看《wxPython in Action》(中文版见http://wiki.woodpecker.org.cn/moin/WxPythonInAction);而我个人主要用PyQt4,这方面值得推荐的读物是柴树杉翻译的《PyQt4 编程简介》(见http://pyqt-doc-cn.googlecode.com/svn/trunk/Introduction_to_PyQT4/doc/r54/index.html)。如果英文好,还是推荐看《Rapid GUI Programming with Python and Qt》(英文pdf版下载地址:http://householdcommandmodule.googlecode.com/files/Rapid.GUI.Programming.with.Python.and.Qt.Oct.2007.pdf)。
[3] Web开发方面:这个我还没有涉及,Django的资料网上也是大把了,其它的Python Web开发框架也是多如牛毛,自己找找吧:)
[4] 移动开发方面:最近准备用PyS60做点小东西,不过一直抽不出时间来,下载了《PyS60 Library Reference》(中文版地址:http://www.woodpecker.org.cn:9081/doc/Python/_PDF/PythonForS60_1_4_1_CN_doc.pdf),一直没时间看呢,所以不好推荐,不过官方的东西应该是差不了的。另外园子里Lucker的blog上有一些关于PyS60开发的不错文章,我虽收藏了,但也是一直没时间详细看,呵呵,以后再说了。
更多精彩
赞助商链接