-
-
模块的定义与分类
什么是模块?一个模块就是一个py文件。
模拟博客园系统作业,100000行代码. 不可能全部存在一个文件.
- 不易维护.
- 效率低.
分文件: 10个文件.每个文件有50个函数,有一写相同功能或者相似功能的函数.代码冗余,重复性.我们应该将这10个函数提取出来,放在一个文件中,随用随拿.
- 节省代码.
- 容易维护,组织结构更清晰.
一个模块就是一个py文件,这个模块存储很多相似的功能,相似的函数的集合体.
模块的分类:
- 内置模块,标准库.python解释器自带的,time,os,sys,等等.200多种.
- 第三方库(模块),各种大神写的一些模块,通过pip install....安装.6000种.
- 自己写的模块.自定义模块.
-
import
# import tbjx # # 当我引用tbjx模块的时候,实际上将tbjx.py执行一遍,加载到内存. # import tbjx # import tbjx # import tbjx # import tbjx # import tbjx # 只是第一次引用时,将此模块加载到内存.
- 执行文件:02 模块import
- 被引用文件(模块): tbjx.py
-
第一次导入模块发生的三件事
import tbjx n = 1 # 引用模块发生三件事. ''' 1. 将tbjx.py文件加载到内存. 2. 在内存中创建一个以tbjx命名的名称空间. 3. 通过tbjx名称空间的名字.等方式引用此模块的名字(变量,函数名,类名等等). ''' # print(tbjx.name) # tbjx.read1() # tbjx.read2()
-
被导入模块有独立的名称空间
# 坑:通过tbjx.的方式引用此模块的名字时,一定一定是从此模块中寻找. # 通过import 引用模块 他有自己的独立名称空间,与当前执行文件没有关系. name = '李业' print(tbjx.name) def read1(): print('in 02 模块import') tbjx.read1()
-
为模块起别名
-
导入多个模块
-
from... import...
-
from... import...的使用
-
from... import...与import对比
-
一行导入多个
-
from... import *与 _ all _ 配合使用,尽量不要单独使用.
-
py文件的两种功能
-
py文件的第一个功能:执行文件(承载代码) 脚本.
直接打印
__name__
返回__main__
-
py文件的第二个功能: 模块(被执行文件).
直接打印
__name__
返回tbjx
模块名
作用:用来控制.py文件在不同的应用场景下执行不同的逻辑(或者是在模块文件中测试代码)
-
-
模块的搜索路径
-