20201223_150_sys.path和模块搜索路径详解

文章目录

        • 3.7 sys.path 和模块搜索路径
          • 使用 sys.path 查看和临时修改搜索路径
          • pythonpath 环境变量的设置
          • .pth 文件的写法

3.7 sys.path 和模块搜索路径

当我们导入某个模块文件时, Python 解释器去哪里找这个文件呢?只有找到这个文件才能读取、装载运行该模块文件。它一般按照如下路径寻找模块文件(按照顺序寻找,找到即停不继续往下寻找):

  1. 内置模块
    即在程序中import的模块;
  2. 当前目录
    指在当前工作路径下,例如下图:
    我正在编辑 module_AA1.py 的话,那当前路径就是到 aa 文件夹
    在这里插入图片描述
  3. 程序的主目录
    指在整个工程目录下,例如下图:
    20201223_150_sys.path和模块搜索路径详解_第1张图片
  4. pythonpath 目录(如果已经设置了 pythonpath 环境变量)
  5. 标准链接库目录
  6. 第三方库目录(site-packages 目录)
  7. .pth 文件的内容(如果存在的话)
  8. sys.path.append()临时添加的目录
  9. 如果还没找到就报错

当任何一个 python 程序启动时,就将上面这些搜索路径(除内置模块以外的路径)进行搜集,放到 sys 模块的 path 属性中(sys.path)。

使用 sys.path 查看和临时修改搜索路径

我们在项目的 b 目录下建立测试模块:

import sys

sys.path.append('f:/')  # 这是临时增加的,只对当前程序有效
print(sys.path)

运行结果(不完全截图,仅作示意):
在这里插入图片描述
运行结果转换成文字版(并在#号段落添加注释):
20201223_150_sys.path和模块搜索路径详解_第2张图片
ps:老师计算机上的运行结果:
20201223_150_sys.path和模块搜索路径详解_第3张图片

pythonpath 环境变量的设置

windows 系统中通过如下操作添加和设置 pythonpath 环境变量:
step1 从控制面板中找到系统属性设置窗口
20201223_150_sys.path和模块搜索路径详解_第4张图片
step2 打开新建环境变量窗口
20201223_150_sys.path和模块搜索路径详解_第5张图片
step3 填写相关参数
20201223_150_sys.path和模块搜索路径详解_第6张图片
填好之后单击确定就完成了pythonpath 环境变量的设置。

.pth 文件的写法

可以在 site-packages 目录下添加.pth 文件。并在文件中增加内容:

# 格式要求一行一个目录
g:\a
g:\b
g:\c

注意:

  1. 需确保 g:\a,g:\b,g:\c 对应的目录真实存在;
  2. 在 windows 系统中建立.pth 文件,由于没有文件名不能直接建立。需要输入命名为:“.pth.”才能正常建立.pth 文件。(我试了下Win10里是支持最后不加点直接创建的)

你可能感兴趣的:(20201223_150_sys.path和模块搜索路径详解)