1.在python项目开发过程中我们有时候会将别人的python项目迁移到自己本地,而别人的python项目往往是使用的虚拟环境即virtual enviroment 我在使用别人项目时,首先提示python sdk无效
图片只是示意
然后通过搜索尝试了多种解决办法如修改venv下的pyvenv文件,修改activate.bat文件。或者是
pip freeze > requirements.txt # 生成requirements.txt
pip install -r requirements.txt # 从requirements.txt安装依赖
均无效。再次分析,venv在生成的时候会使用基础解释器,里面的一些配置肯定不同。
那么既然如此,我的解决思路就是在我当前环境创建新的venv,获取到我本地环境的依赖关系,再将原来项目的package拿过来放在新环境里面就可以了。说干就干。
第一步,将原项目里的venv文件夹剪切至桌面存放,
第二步,在项目中新建虚拟环境
两个venv打开文件内容一致
下一步将新的venv里的内容复制到旧的venv中,替换同名文件,也就是用新的venv里的依赖替换旧的依赖,然后保留原来的包这样旧的venv就变成了旧的包+新的依赖,这样我们就能使用了。把这个venv放到项目中就好了
此时得到的环境就是我们可用的虚拟环境,这样就不会存在不同版本不适配的问题最后说一下,如何自定义生成一个三方库
首先在我们项目的python包的同级目录下新建setup.py文件
setup.py文件的内容为
点击打开终端terminel
执行命令,用的哪个解释器就用哪个python.exe
再执行命令
这里dist目录里构建出来的tar包,就是我们可以安装的第三方框架了,可以发布提供给其他人安装使用
那么如何在虚拟环境安装打包好的自定义库呢
首先进入venv环境下的scripts目录 进入cmd命令窗口 执行pip install 安装包 当然最好将安装包放到scripts目录下