1.1.1 Python模块

Python模块是指包含Python代码的文件,可以被其他Python模块或脚本导入。脚本(script)则是可以被执行的Python文件。

Python模块能够使不同文件之间共享代码,避免重复工作。

每个Python文件都可以访问一个名为__name__的全局变量,此变量有两个可能的值:

❍模块名称,即不包括.py后缀的文件名;

❍'__main__'字符串。

Python根据该文件是由其他模块导入还是作为脚本运行来决定变量__name__的值。当该模块被导入另一个模块或脚本时,__name__被设置为模块的名称。如果将模块作为脚本运行,如下所示:

则__name__的值会被设置为'__main__'。这可能有点抽象,不过我们将在本章的后面部分解释为什么我们要关注这个全局变量。你会发现,一个模块是被导入还是作为脚本运行,这个信息非常重要,我们需要关注。

随着我们为项目编写的Python模块越来越多,将这些模块根据功能进行分组也顺理成章。这些分组被称为包。