【1.56】模块基本
函数
类
模块
就是把具有需要重复使用的功能 抽离出来 避免重复代码
模块简单一点就是一个 py 文件
让不同功能 不同代码 放在不同的模块里面
提供可维护性的代码 便于后面维护使用
引用 就是 import 导入
1导入 就会执行 被导入的文件
2引入需要的变量
变量 从自己找到全局 然后找sys 路径
模块就三种
python 标准库 导入他自己的库文件 如 time模块
第三方的模块 如myaql 就要用 pip install 安装
应用程序自定义的模块 作者自己写的
自己在写模块 也就是定义py文件名字 满足 变量定义 不要和内置函数名字一样
函数名切记和自己定义的变量名字一样
模块名也不要和自己定义的函数 定义的变量名一样
但是不同模块中,或者不同的包中的 函数名 或者变量名 可以一样
import time
form 文件 import 变量或者文件
文件结构:
modulefile
----modulepacket
----__init.py__
----cal.py
----main.py
----bin.by
#cal.py #一般文件 或者功能文件就定义功能文件名字 #主要逻辑文件 放在 main文件 #但是程序的入口文件 就要放在 包文件外的bin文件 def add(*args): res = sum((*args)) return res
#main.by #导入文件 最好用绝对路径 #但是在同一个路径 可以直接导入文件名字 #但是为了以后bin文件能用 我们就要导入绝对路径
import cal from cal import * from # 一般不这样用 from cal import add print (cal.add((1,2,3,4)))
bin.by
from modulepacket import cal #要这样调用 注意路径 print (cal.add((1,2,3,4))) #因为import 是按照自己路径往上面找 import sys print (sys.path) #['D:\\untitled\\modulepacket\\modelfile', # 'D:\\untitled\\modulepacket', # 'C:\\Users\\xiaobei\\AppData\\Local\\Programs\\Python\\Python37-32\\python37.zip', # 'C:\\Users\\xiaobei\\AppData\\Local\\Programs\\Python\\Python37-32\\DLLs', # 'C:\\Users\\xiaobei\\AppData\\Local\\Programs\\Python\\Python37-32\\lib', # 'C:\\Users\\xiaobei\\AppData\\Local\\Programs\\Python\\Python37-32', # 'C:\\Users\\xiaobei\\AppData\\Local\\Programs\\Python\\Python37-32\\lib\\site-packages', # 'C:\\Users\\xiaobei\\AppData\\Local\\Programs\\Python\\Python37-32\\lib\\site-packages\\win32', # 'C:\\Users\\xiaobei\\AppData\\Local\\Programs\\Python\\Python37-32\\lib\\site-packages\\win32\\lib', # 'C:\\Users\\xiaobei\\AppData\\Local\\Programs\\Python\\Python37-32\\lib\\site-packages\\Pythonwin', # 'C:\\Program Files\\JetBrains\\PyCharm 2018.3.2\\helpers\\pycharm_matplotlib_backend']
浙公网安备 33010602011771号