模块介绍
从物理的角度来说,一个模块就是一个.py文件。从逻辑的角度说,就是模块的命名空间。
产生的背景:在同一个.py文件中,一个名字,不能被定义两次。为了解决名字冲突问题,所有我们定义不同的模块
模块的好处:1.有利于项目的划分
2.模块提供了独立的命名空间,解决了命名冲突
3.模块可以提供给多个人共享使用
模块的导入
两种方式
import 模块1,模块2
from…import 模块1,模块2 (后面可以跟多个模块按顺序执行)
当import某个模块之后,python执行了哪些内容呢?
当我们import某个模块之后,将被导入的模块代码从头到尾执行一次。
如何使用导入的内容 模块名.变量名(变量) 模块名.方法名(方法)
import和from...import区别
相同点:importherom …import执行的时候,会运行被执行的所有代码
不同点:语法不通作用不同,import相当于全盘导入,from import 相当一部分导入
from...import,保留import之后的部分,其他的不能访问,使用导入后的内容,就直接使用名字,即import后面的名字即可。
导入后使用的方法不同,import要加模块名使用,而from import 直接使用。
注意:相同的变量名优先打印本模块的变量和方法
模块别名
模块别别名可以使用as关键字
import 模块名1 as 别名, 模块2 as 别名
from 模块 import 名字1 as 别名 1,名字2 as 别名2
注意:如果有了别名,原名就会失效了。
模块的搜索路径
目的:再给模块起名字的时候,要注意不要跟自己有的存在的模块同名。跟已有路径同名时,优先导入自己定义的。
模块加载的顺序
- 先到内建解释器中加载 buildins.py;
- 到脚本执行所在的模块中加载;
- 到python的path环境变量中加载;(少用)
- python的安装路径 如lib包下