模块

定义:在 Python 中,一个 .py 文件就称之为一个模块(Module)

import

一般的导入模块的方式: import module1[, module2[,... moduleN]

import … as

导入模块使用别名的方式: import name1 as name2

from … import

导入模块的部分方法: from modname import name1[, name2[, ... nameN]]

from … import *

导入模块的所有内容: from modname import *

  1. # 一般的导入模块的方式
  2. import set
  3. # 导入模块使用别名 as
  4. import iter_and_yield as my_yield
  5. # 导入模块的部分方法
  6. from filter_and_map import filter_func, map_func
  7. # 导入模块的所有内容
  8. from dict import *
  9. if __name__ == "__main__":
  10. # 一般使用情况
  11. set.set_func()
  12. # 使用别名 as
  13. my_yield.yield_func()
  14. # 使用 from 方式
  15. filter_func()
  16. map_func()

name

一个模块被另一个程序第一次引入时,其主程序将运行。如果我们想在模块被引入时,模块中的某一程序块不执行,我们可以用name属性来使该程序块仅在该模块自身运行时执行

  1. if __name__ == '__main__':
  2. print('程序自身在运行')
  3. else:
  4. print('我来自另一模块')

包使用

包的出现,是解决不同目录下的模块引用: import 包.模块 、 from 包 import 模块
com.Learn.module.nameattributes.lname
image.png

  1. import sound.effects.echo

问题

自定义模块与Python自带的模块重名

模块的加载顺序,如果自定义和内置模块重名,当import 一个模块时,会依次的在以上路径顺序中查找,找到了就不再往后找了,找不到就导入异常,只搜索指定目录,不递归搜索

参考