导入的库。在 Python 中,混合式模块可以通过在程序入口前加上特定条件而实现。 如所熟知,我们一般都在程序文件的最后加上启动程序的一行语句:

    这是对程序入口(主函数 main)的调用,没有这一行,程序文件就不是可执行的文件。这 就是直接执行的模块文件,在窗口系统中用鼠标双击即可启动程序。

    意思是当条件满足时启动程序,否则不启动程序。问题是条件怎么写?

    如果是用 import 导入模块,Python 会将该模块的一个特殊变量 name 的值设置为 模块的名字。例如:

    但如果是直接执行模块(如双击模块文件图标等),Python 则将模块的特殊变 量 name 设置为字符串’main’。因此可以通过特殊变量 name 的值来判断模块是被 导入的还是被直接执行的。根据这个底层细节,我们可以将程序文件的最后一行改成:

    这样就能确保当程序是直接执行时,main 能启动;当程序是被导入时,忽略 main。