Python 模块是⼀个包含有函数、变量、类和常量等等内容的 python ⽂件。 模块帮助我们将相关的代码组织在⼀起,例如 math 模块拥有数学相关的函数。
13.1 创建模块
创建⼀个名为 mymodule.py 的新⽂件,并写⼊下⾯的代码:
在这个⽂件中,我们定义了⼀个全部变量 foo 和⼀个名为 hello() 的⽅法。现在我们可以使⽤ import 关键词来引⼊这个模块,并使⽤ mymodule.py 中的变量和函数:
import mymodule
print(mymodule.foo)
mymodule.hello()
上述代码的运⾏结果如下:
100
i am from mymodule.py
如之前代码所⽰,调⽤模块的变量和函数时,需要指定模块的名称。
13.2 使用模块中的指定内容
当我们使⽤ import 声明导⼊模块时,模块中的所有内容都被导⼊到当前⽂件中。如果我们只需要模块中的个别内容时该如何操作呢?使⽤ from 关键词,就可以达到这样的⽬的,⽐如:
from mymodule import foo
print(foo)
13.3 dir 函数
内置的 dir() 函数能够返回由对象所定义的名称列表。如果这⼀对象是⼀个模块,则该列表会包括函数内所定义的函数、类与变量。该函数接受参数。如果参数是模块名称,函数将返回这⼀指定模块的名称列表。如果没有提供参数,函数将返回当前模块的名称列表。
13.4 包
包是指⼀个包含模块与⼀个特殊的 __init__.py ⽂件的⽂件夹,后者向 Python 表明这⼀⽂件夹是特别的,因为其包含了 Python 模块。
假设你想创建⼀个名为“world”的包,其中还包含着”asia“、”africa“等其它⼦包,同 时这些⼦包都包含了诸如”india“、”madagascar“等模块。下⾯是你会构建出的⽂件夹 的结构。
包是⼀种能够⽅便地分层组织模块的⽅式。