问题
把模块导入时
①python从哪里找到这些模块 ②顺序如何
测试
目录结构如下 ├── tests │ ├── init.py │ ├── test_1 │ │ ├── test_syspath1.py │ │ └── test_syspath.py │ ├── test_syspath1.py
tests.test1.test_syspath.py
import sys
print(sys.path)
import test_syspath1
print(test_syspath1.a)
print(sys.path)
tests.test1.test_syspath1.py
#coding:utf-8
"""
@Author: lgz
@Time : 2019/9/2 23:25
@File : test_syspath1.py
"""
a = 111111111111111111111
tests.test_syspath1.py
#coding:utf-8
"""
@Author: lgz
@Time : 2019/9/2 23:25
@File : test_syspath1.py
"""
a = 2222222222222222
结论
Python 执行一个 py 文件,无论执行的方式是用绝对路径还是相对路径,interpreter 都会把文件所在的 directory 加入 sys.path 这个 list 中,并且是索引为 0 的位置。Python 就是在 sys.path 中查找包和模块的。
参考链接
https://www.cnblogs.com/michael-xiang/p/10466053.html