python受到大众喜欢的一个重要原因就是存在众多可以直接使用的各类包或者库,这大大简化了程序设计的复杂度。因此,在python程序中会经常看到调用其他python库或者包的操作。
-
module 模块
模块是一段实现特定功能的程序。在python中通常保存为单个的.py文件。 -
package 包
多个或一系列实现特定功能的module组合在一起(组合的形式通常是放置在一个文件夹)就形成了package。package中还可以有子包,包和子包就像文件夹的包含关系一样。
下面以keras包为例看一下文件结构:
首先,在anaconda的lib文件夹下包含了各种包,其中就有keras的。
然后,打开keras文件夹可以看到里面有__int__.py,这是python包中都包含的一个标志性文件。
同时,还会发现有很多子文件夹,这些就是keras包中的子包,如layers、datasets等都是经常调用的子包。打开这些子包的文件夹同样可以看到__int__.py文件。这些包在程序中的调用形式如下:
(该程序段来源于tensorflow官方教程中的MINIST集案例。)
了解了这些module、package的结构后,如果对某个module文件想查看具体的代码的话就可以很方便的找到对应的文件,来查阅和学习代码。
关于其他相关的说明可以参考以下文章:
https://blog.csdn.net/ritsu_/article/details/12003709