python中自定义模块导入路径的方式主要有以下3种:

(1)使用sys.path.append()

  • 随着程序执行,会动态地添加模块导入的路径,但是程序执行结束后就会立即失效(临时性的)

    import sys
    sys.path.append('自定义路径')

(2)加入到环境变量PYTHONPATH

  • 用于当前用户

    • 在用户主目录下有一个 .bashrc 隐藏文件,打开文件

      sudo vim ~/.bashrc
    • 添加单个路径的方法

      export PYTHONPATH=<自定义路径>:$PYTHONPATH
    • 如果要加入多个路径,只需要用冒号':'将多个路径进行隔开

      export PYTHONPATH=<自定义路径1>:<自定义路径2>:...:$PYTHONPATH
    • 保存后,在终端执行以下命令使环境变量立即生效
      source ~/.bashrc
  • 用于所有用户
    • 需要操作的文件为/etc/profile

      sudo vim /etc/profile
    • 添加单个路径
      export PYTHONPATH=<自定义路径>:$PYTHONPATH
    • 添加多个路径
      export PYTHONPATH=<自定义路径1>:<自定义路径2>:...:$PYTHONPATH
    • 使修改生效,终端执行以下命令
      source /etc/profile

(3)使用.pth文件

  • 在已知的库文件目录site-packages中创建.pth文件,按照一行一个路径的方式写入自定义路径。
  • 比如在/usr/local/python3/lib/python3.9/site-packages下创建python.pth文件(具体路径根据个人设置)
    sudo vim /usr/local/python3/lib/python3.9/site-packages/python.pth
  • 在python.pth文件中按行写入自定义路径
    /.../自定义路径1
    /.../自定义路径2
    ...

    Python在遍历已知的库文件目录过程中,如果遇到.pth文件,就会将文件中所记录的路径加入到sys.path中,于是.pth文件中所指明的路径也就可以被Python运行环境所找到。

python中如何添加模块导入路径?的更多相关文章

  1. python如何永久添加模块搜索路径

    win10系统 依次点击:控制面板\系统和安全\系统\高级系统设置\环境变量   找不到的话,直接在设置中搜索  环境变量  也一样 此时上面是用户变量 下面是系统变量   在系统变量中找到PYTHO ...

  2. 善于利用python中的os模块

    作为一个程序猿,平时善于利用python中的os模块进行路径等操作,会省去很多麻烦,下面总结一下我平时经常用到的方法: import os os.getcwd() # 获取当前文件所在的目录 os.p ...

  3. 在Python中使用glob模块查找文件路径的方法

    在Python中使用glob模块查找文件路径的方法 glob模块是最简单的模块之一,内容非常少.用它可以查找符合特定规则的文件路径名.跟使用windows下的文件搜索差不多.查找文件只用到三个匹配符: ...

  4. Python中的logging模块就这么用

    Python中的logging模块就这么用 1.日志日志一共分成5个等级,从低到高分别是:DEBUG INFO WARNING ERROR CRITICALDEBUG:详细的信息,通常只出现在诊断问题 ...

  5. Python中的logging模块

    http://python.jobbole.com/86887/ 最近修改了项目里的logging相关功能,用到了python标准库里的logging模块,在此做一些记录.主要是从官方文档和stack ...

  6. Python中,添加写入数据到已经存在的Excel的xls文件,即打开excel文件,写入新数据

    背景 Python中,想要打开已经存在的excel的xls文件,然后在最后新的一行的数据. 折腾过程 1.找到了参考资料: writing to existing workbook using xlw ...

  7. python中的select模块

    介绍: Python中的select模块专注于I/O多路复用,提供了select  poll  epoll三个方法(其中后两个在Linux中可用,windows仅支持select),另外也提供了kqu ...

  8. Python中的re模块--正则表达式

    Python中的re模块--正则表达式 使用match从字符串开头匹配 以匹配国内手机号为例,通常手机号为11位,以1开头.大概是这样13509094747,(这个号码是我随便写的,请不要拨打),我们 ...

  9. python中的shutil模块

    目录 python中的shutil模块 目录和文件操作 归档操作 python中的shutil模块 shutil模块对文件和文件集合提供了许多高级操作,特别是提供了支持文件复制和删除的函数. 目录和文 ...

随机推荐

  1. Bata冲刺——第一天

    这个作业属于哪个课程 https://edu.cnblogs.com/campus/fzzcxy/2018SE1 这个作业要求在哪里 https://edu.cnblogs.com/campus/fz ...

  2. case when then else end用法

        case具有两种格式,简单case函数和case搜索函数 case函数只返回第一个符合条件的值,剩下的case部分将会被自动忽略 1.简单函数 CASE sex         WHEN '1 ...

  3. PPT 转 word

    可以wps  直接转 打开wps   在页面里直接点击右键  可以导出wps

  4. Modbus 协议图文详解

    1.概论 Modbus是一种串行通信协议,由于其协议简单易用,且没有版权要求,目前已经成为工业领域通信协议的实时标准.ModBus协议是又施耐德电气的前身Modicon公司在1979年提出的.Modb ...

  5. DHCP.md

    DHCP 主配置文件   从 /usr/share/doc/dhcp 复制 dhcpd.conf.sample 到/etc/dhcp下                                  ...

  6. 一文详解 ARP 协议

    我把自己以往的文章汇总成为了 Github ,欢迎各位大佬 star https://github.com/crisxuan/bestJavaer 公众号连载计算机网络文章如下 ARP,这个隐匿在计网 ...

  7. FastAPI学习: 个人博客的后端API

    前言 学习FastAPI中把官方文档过了一遍,看了些大佬的文章,也借鉴(抄袭)了部分代码,写了一套个人博客的API,目前还比较简陋,统计的API基本没有,而且目前基本都停留在单表查询,所以含量不高,接 ...

  8. 机器学习算法·KNN

    机器学习算法应用·KNN算法 一.问题描述 验证码目前在互联网上非常常见,从学校的教务系统到12306购票系统,充当着防火墙的功能.但是随着OCR技术的发展,验证码暴露出的安全问题越来越严峻.目前对验 ...

  9. (二)数据源处理5-excel数据转换实战(上)

    把excel_oper02.py 里面实现的:通过字典的方式获取所有excel数据.放进utils: ️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️ utils: def get_al ...

  10. SAP中的密码输入框

    在SAP中的密码输入框,可分为两种情况: 1.用selection语句书写的选择屏幕上的密码输入框 实现的方式就是在AT SELECTION-SCREEN OUTPUT事件中写入如下代码: LOOP ...