python自定义模块使用.pth文件实现重用方式

 更新时间:2024年02月26日 17:10:02   作者:hbh112233abc  
这篇文章主要介绍了python自定义模块使用.pth文件实现重用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

python自定义模块使用.pth文件实现重用

关于自定义模块重用的最好办法是打包发布到pypi然后使用pip进行安装,但是有些模块是项目内部使用的不方便公开的可以使用.pth实现自动引入

关于python的.pth文件的功能参考:

Python中._pth文件的作用

具体操作

1. 在python的 Lib/site-packages 目录新建.pth文件

2. 编辑.pth文件,添加要重用的模块目录,多个目录编辑多行

然后D:\py\base目录中的模块就可以直接import导入使用了

以下是我写的自动添加模块到.pth的脚本in_lab.py

import os
import shutil
 
python_path = shutil.which("python")
python_path = os.path.dirname(python_path)
if python_path.startswith("/"):
    python_path = python_path[1] + ":" + python_path[2:]
print(python_path)
lib_path = os.path.join(python_path, "lib")
if not os.path.exists(lib_path):
    lib_path = os.path.join(os.path.dirname(python_path), "lib")
 
pth_file = os.path.join(lib_path, "site-packages", ".pth")
print(pth_file)
pwd = os.path.dirname(os.path.abspath(__file__))
if not os.path.exists(pth_file):
    with open(pth_file, "w") as f:
        f.write(pwd + "\n")
else:
    with open(pth_file, "r") as f:
        content = f.read()
    if pwd not in content:
        with open(pth_file, "a") as f:
            f.write(pwd + "\n")

在需要添加的模块中生成in_lab.py

然后在当前使用的python环境运行

python d:/py/base/in_lab.py

这样就可以自动添加d:/py/base到.pth了

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • python杀死一个线程的方法

    python杀死一个线程的方法

    由于python线程没有提供abort方法,所以我们需要自己想办法解决此问题,面对这一问题,小编帮大家解决phthon杀死一个线程的方法,需要的朋友一起来学习吧
    2015-09-09
  • python 读取txt,json和hdf5文件的实例

    python 读取txt,json和hdf5文件的实例

    今天小编就为大家分享一篇python 读取txt,json和hdf5文件的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-06-06
  • Python中PySide2的安装及配置

    Python中PySide2的安装及配置

    在python中,支持图形化界面开发的库有很多,今天主要介绍一下PySide2这个库。具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-07-07
  • pytorch中DataLoader()过程中遇到的一些问题

    pytorch中DataLoader()过程中遇到的一些问题

    这篇文章主要介绍了pytorch中DataLoader()过程中遇到的一些问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-05-05
  • Python如何求取逆序数

    Python如何求取逆序数

    这篇文章主要介绍了Python如何求取逆序数问题,具有很好的参考价值,希望大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-12-12
  • django中的select_related和prefetch_related性能优化分析

    django中的select_related和prefetch_related性能优化分析

    这篇文章主要介绍了django中的select_related和prefetch_related性能优化分析,本文给大家介绍的非常详细,需要的朋友可以参考下
    2024-07-07
  • python BeautifulSoup库的安装与使用

    python BeautifulSoup库的安装与使用

    这篇文章主要介绍了python BeautifulSoup库的安装与使用,帮助大家更好的理解和使用python,感兴趣的朋友可以了解下
    2020-12-12
  • python环境搭建Makefile简单使用步骤

    python环境搭建Makefile简单使用步骤

    Makefile是一种自动化构建工具,通过定义规则、依赖关系和执行命令,替代手动重复敲编译、运行和清理等指令,提升开发效率,本文给大家介绍python环境搭建Makefile简单使用方法,感兴趣的朋友跟随小编一起看看吧
    2026-02-02
  • Python进行CBC加密的完整流程

    Python进行CBC加密的完整流程

    在密码学领域,AES-CBC模式因其链式加密特性和对重复模式的隐藏能力,成为比ECB更安全的加密方案,本文将深入解析CBC模式的核心原理,通过Python代码演示完整加解密流程,需要的朋友可以参考下
    2025-09-09
  • Python实现自动整理文件的示例代码

    Python实现自动整理文件的示例代码

    在我们日常生活中,文件总是杂乱无章的,这个时候就需要我们整理一下。但是文件太多的话整理起来是非常麻烦的,因此我们今天就来用Python实现文件的自动整理
    2022-08-08

最新评论