Python 模块

模块

当我们把一些常用的功能,抽象出来,放在单独的文件里面。这样的一些文件,就可以称之为模块。我们在 Python 教程 开篇时提到,Python之所以强大,就是有很多很多的,当我们要开发一件产品时,可以从这些中找到特定的零件进行拼装,组合而成。所谓的,就是模块


使用模块

hello.py

def say():
 print('hello !')

if __name__ == '__main__':
 say()

main.py

>>> import hello as h # import 导入模块 | as 别名,如果一个模块的名称特别的长,就可以使用as另外起一个短点的名字
>>> h.say() # 执行 hello.py 的 say() 方法

'hello !'

__name__

__name__代表当前模块的名称,hello.py文件如果使用python hello.py的方式运行,__name__的值就等于__main__,此时say()函数会被执行。如果被当时模块导入时,__name__的值就会是模块名称hello.py


__init__

模块通常不只有一个文件,是由多个文件,放在一个目录里组成的。

alphabet
` __init__.py # 模块文件,有了这个空文件,该目录就变成一个模块。
` a.py
` b.py
` ...

a.py

def alpha():
 print('alpha')

b.py

def beta():
 print('beta')

main.py

>>> from alphabet import a # 要导入目录里面模块需要使用 from import 语法 | from 目录名 import 文件名
>>> a.alpha()
'alpha'

>>> from alphabet import * # 星号代表导入 alphabet 目录下的所有文件
>>> b.beta()
'beta'

__init__.py

# __init__ 可以是空的,也可以输入内容,一般做为模块的入口或者公共文件

def init():
 print('__init__')

main.py

>>> import alphabet  # 这个目录名执行的,就是 __init__ 文件里的内容
>>> alphabet.init()

'__init__'
更多教程 HTML5 教程 CSS3 教程 JavaScript 教程 JQuery 教程 React.js 教程 Node.js 教程 Koa2 教程 Python 教程 Linux 教程