模块搜索路径

模块搜索路径的优先级
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为起始点,导入麻烦

相对导入: 参照当前所在文件的文件夹为起始开始查找,称之为相对导入
符号: .代表当前所在文件的文件加,..代表上一级文件夹,...代表上一级的上一级文件夹
优点: 导入更加简单
缺点: 只能在被导入的模块中使用,不能在执行文件中用





posted @ 2018-08-13 16:57  长不胖的zhu  阅读(205)  评论(0)    收藏  举报