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了

总结

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

相关文章

  • python3实现从kafka获取数据,并解析为json格式,写入到mysql中

    python3实现从kafka获取数据,并解析为json格式,写入到mysql中

    今天小编就为大家分享一篇python3实现从kafka获取数据,并解析为json格式,写入到mysql中,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-12-12
  • python中的字典详细介绍

    python中的字典详细介绍

    这篇文章主要介绍了python中的字典详细介绍,字典是Python中最强大的数据类型之一,本文讲解了什么是字典、创建字典和给字典赋值 、字典的基本操作、映射类型操作符、映射相关的函数、字典的方法等内容,需要的朋友可以参考下
    2014-09-09
  • pandas中提取DataFrame某些列的一些方法

    pandas中提取DataFrame某些列的一些方法

    dataframe是pandas包的重要对象,熟练掌握dataframe的基本操作是很有必要的,下面这篇文章主要给大家介绍了关于pandas中提取DataFrame某些列的一些方法,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-06-06
  • Python 解析获取 URL 参数及使用步骤

    Python 解析获取 URL 参数及使用步骤

    这篇文章主要介绍了Python 解析获取 URL 参数及使用,本文分步骤通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-06-06
  • win10下python3.5.2和tensorflow安装环境搭建教程

    win10下python3.5.2和tensorflow安装环境搭建教程

    这篇文章主要为大家详细介绍了win10下python3.5.2和tensorflow安装环境搭建教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-09-09
  • 比较详细Python正则表达式操作指南(re使用)

    比较详细Python正则表达式操作指南(re使用)

    Python 1.5之前版本则是通过 regex 模块提供 Emecs 风格的模式。Emacs 风格模式可读性稍差些,而且功能也不强,因此编写新代码时尽量不要再使用 regex 模块,当然偶尔你还是可能在老代码里发现其踪影
    2008-09-09
  • Python实现冒泡排序的简单应用示例

    Python实现冒泡排序的简单应用示例

    这篇文章主要介绍了Python实现冒泡排序的简单应用,结合实例形式分析了Python基于冒泡排序实现的输入字符串数字排序与运算操作,需要的朋友可以参考下
    2017-12-12
  • Python爬虫JSON及JSONPath运行原理详解

    Python爬虫JSON及JSONPath运行原理详解

    这篇文章主要介绍了Python爬虫JSON及JSONPath运行原理详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-06-06
  • python中把嵌套的列表合并成一个列表方法总结

    python中把嵌套的列表合并成一个列表方法总结

    python中list这种数据结构很常用到,下面这篇文章主要给大家介绍了关于python中把嵌套的列表合并成一个列表方法的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-11-11
  • 基于Python闭包及其作用域详解

    基于Python闭包及其作用域详解

    下面小编就为大家带来一篇基于Python闭包及其作用域详解。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-08-08

最新评论