一、模块
模块:就是一系列功能的结合体 模块的三种来源: 1.内置的python解释器自带,pip里面 2.第三方的(别人写好的模块直接调用 3.自定义的(你自己写的) 模块的四种表现形式 1.使用python编写的py文件(也就意味着py文件也可以称之为模块:一个py文件也可以称之为一个模块) 2.已被编译为共享库或DLL的C或C++扩展(了解) 3.把一系列模块组织到一起的文件夹(文件夹下有一个__init__.py文件,该文件夹称之为包) 包:一系列py文件的结合体 4.使用C编写并连接到python解释器的内置模块 为什么要用模块 1.用别人写好的模块(内置的,第三方的):典型的拿来主义,极大的提高开发效率 2.使用自己写的模块(自定义的):当程序比较庞大的时候,你的项目不可能只在一个py中 那么当多个文件中都需要使用相同的方法的时候 可以将该公共的方法写到一个py文件中 其他的文件以模块的形式导过去直接调用即可 如何使用模块 注意(******):一定要区分哪个是执行文件,哪个是被导入文件
二、import 导入模块
1.
首次导入模块(md1.py)(******):右键运行run.py文件首先会创建一个run.py的名称空间
1.执行md.py文件
2.运行md.py文件中的代码将产生的名字与值存放到md.py名称空间中
3.在执行文件中产生一个指向名称空间的名字(md)
官网解释
#官网链接:https://docs.python.org/3/tutorial/modules.html#the-module-search-path 搜索路径: 当一个命名为my_module的模块被导入时 解释器首先会从内建模块中寻找该名字 找不到,则去sys.path中找该名字 sys.path从以下位置初始化 执行文件所在的当前目录 PTYHONPATH(包含一系列目录名,与shell变量PATH语法一样) 依赖安装时默认指定的 注意:在支持软连接的文件系统中,执行脚本所在的目录是在软连接之后被计算的,换句话说,包含软连接的目录不会被添加到模块的搜索路径中 在初始化后,我们也可以在python程序中修改sys.path,执行文件所在的路径默认是sys.path的第一个目录,在所有标准库路径的前面。这意味着,当前目录是优先于标准库目录的,需要强调的是:我们自定义的模块名不要跟python标准库的模块名重复,除非你是故意的,傻叉。