如何用代码实现Python动态加载依赖
发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,今天就跟大家聊聊有关如何用代码实现Python动态加载依赖,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。前几天在一个开源项目里遇到好多用户反馈
千家信息网最后更新 2026年11月03日如何用代码实现Python动态加载依赖通过 pip 安装运行
注入代码运行
今天就跟大家聊聊有关如何用代码实现Python动态加载依赖,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
前几天在一个开源项目里遇到好多用户反馈,不会安装依赖,或者执行 pip install -r requirements.txt 没有反应。
可能造成的原因有很多种,一一排查起来也很麻烦。
想一劳永逸解决这个问题,一般大家都是到 site-packages 里面把所需要的包导出来,放到项目根目录。
但这样终究太过粗糙,不符合Python优雅的个性。
所以我就想,能不能动态引入包,如果没有的话,再调用 pip 下载。最后也差不多实现了我的设想。
我推荐是使用 快速开始 - 注入代码运行 中的方式
快速开始
跪求star GitHub - louisyoungx/dypend
通过 pip 安装运行
在 PyPI 下载 dypend依赖包
pip install dypend
在本地生成 requirements.txt 依赖文件
pip freeze > requirements.txt
在项目的入口文件的最上层引入 dypend ,不用更改任何其他代码
import dypend
这时 dypend会检查你的Python环境中是否都有 requirements.txt 中的包,如果没有, dypend会调用 pip下载。
注入代码运行
在本地生成 requirements.txt 依赖文件
pip freeze > requirements.txt
在项目的入口文件的最上层添加如下代码,不用更改任何其他代码
import osimport reREQUIREMENTS = os.getcwd() + '/requirements.txt'def getDepends(): requirements = open(REQUIREMENTS, 'r') libs = requirements.readlines() libList = [] for lib in libs: try: name = re.search("^.+(?===)", lib).group(0) version = re.search("(?<===).+$", lib).group(0) libDict = { "name": name, "version": version } libList.append(libDict) except: continue return libListdef importLib(): """Load python dependent libraries dynamically""" libList = getDepends() from pip._internal import main as pip_main import importlib def install(package): pip_main(['install', package]) createVar = locals() for lib in libList: print(lib) try: createVar[lib["name"]] = importlib.import_module(lib["name"]) except Exception as e: try: install(f'{lib["name"]}=={lib["version"]}') createVar[lib["name"]] = importlib.import_module(lib["name"]) except Exception as e: print(e)importLib()这时dypend会检查你的Python环境中是否都有 requirements.txt 中的包,如果没有,dypend会自动下载。
看完上述内容,你们对如何用代码实现Python动态加载依赖有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注行业资讯频道,感谢大家的支持。
代码
文件
项目
动态
内容
运行
上层
不用
入口
环境
检查
生成
优雅
粗糙
一劳永逸
差不多
个性
原因
方式
更多
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
咖啡网
喔噻互联网科技有限公司
哈尔滨大商圈互联网科技有限公司
喔噻互联网科技
世界互联网领先科技成果
华中科技大学互联网
科技互联网创业计划书
国外互联网科技网站
联恩商钥互联网科技有限公司
衡水科技产业互联网平台
博兴的互联网电子科技公司
厦门比较好的科技互联网公司
华夏互联网科技业
工业互联网科技创业
昆明中奇联合互联网科技
萌小萌互联网科技河南有限公司
互联网科技手机排行榜
广州三三互联网科技有限公司
安徽九吞吴互联网科技有限公司
互联网科技创业有什么好项目
互联网科技战争
丰台科技园 互联网
广州凡科互联网科技
农村开互联网科技讲堂
互联网金融科技公司干啥的
浙江互联网科技研学营
互联网风格科技公司名称
互联网科技品牌
互联网科技对化妆品行业
上海旺乐尼互联网科技有限公司