随着不断给类添加功能,文件可能变得很长,即便妥善地使用了继承亦是如此,为遵循Python的总体理念,应让文件尽可能简洁。为在这方面提供帮助,Python允许将类存储在模块中,然后在主程序中导入所需的模块。
新建一个Animal类的模块,其中只包含Animal类,编写程序如下所示:
在主程序main中调用Animal类,编写程序如下所示:
from animal import Animal这条语句,让Python把animal模块的Animal类导入到主程序中。
我们把Cat类也编写在Animal类中。
在主程序main中使用Cat类,编写程序如下所示:
我们可以导入整个模块,再使用句点表示法访问需要的类。这种导入方法很简单,代码也易于阅读。由于创建类实例的代码都包含模块名,因此不会与当前文件使用的任何名称发生冲突。编写程序如下所示:
我们发现和原先的输出结果一致。
要导入模块中的所有类,其语法格式:
from 模块名 import *
不推荐使用这种导入方式,因为这种导入方式没有明确地指出使用了模块中的哪些类,所以容易引发名称方面的问题
需要从一个模块中导入很多类时,最好导入整个模块,并使用模块名.类名的语法来访问类。这样做,虽然文件开头并没有列出用到的所有类,但是我们清楚地知道在程序的哪些地方使用了导入的模块。避免了导入模块中的每个类可能引发的名称冲突。