模块搜索路径的优先级 1. 内存中已经加载过的 2. 内置模块 3. sys.path # 第一个值是当前执行文件所在的文件夹 import sys print(sys.path) import time import m1 time.sleep(10) import m1 m1.f1() import time # print(time) print(time.time()) 方案一: import sys sys.path.append(r'D:\脱产三期视频\day16\03 模块的搜索路径1\dir1') print(sys.path) import m1 m1.f1() 方案二: from dir1 import m1 m1.f1() from dir1.dir2 import m2 m2.f2() *****
# 环境变量是以当前执行文件为准的 # 强调:所有被导入的模块参照环境变量sys.path都是以执行文件为准的 绝对导入与相对导入
绝对导入: 以执行文件的sys.path为起始点开始导入,称之为绝对导入 优点: 执行文件与被导入的模块中都可以使用 缺点: 所有导入都是以sys.path为起始点,导入麻烦 相对导入: 参照当前所在文件的文件夹为起始开始查找,称之为相对导入 符号: .代表当前所在文件的文件加,..代表上一级文件夹,...代表上一级的上一级文件夹 优点: 导入更加简单 缺点: 只能在被导入的模块中使用,不能在执行文件中用