当然,第一步肯定是安装poetry,poetry安装 →官网
https://python-poetry.org/
windows在powershell输入:
(Invoke-WebRequest -Uri https://raw.githubusercontent.com/python-poetry/poetry/master/get-poetry.py -UseBasicParsing).Content | python -
这里是第一个坑,网站会给你报错,无法连接,推荐方法用VPN开启全局代理,其他网上的办法基本都试过,没用
安装好之后根据poetry的提示,将poetry加入到环境变量里面,最后在powershell输入,
poetry --version
如果能显示版本号,就表示你越过了第一个坑。
接下来就是conda的安装了,由于我的conda是老早之前安装的,也就没有问题。
接下来就是poetry和conda的混合使用了
首先是conda的创建环境参考别人的文章
conda创建python环境 - 简书 (jianshu.com)https://www.jianshu.com/p/240e396e495f环境创建好了之后,就是conda与poetry的混合使用了。
首先第一步,你要运行cmd,必须cmd(这里是第二个大坑),然后输入
conda init
然后输入
conda activate env
将你创建的虚拟环境激活,(powershell是无法激活conda环境的)
补(似乎powershell也能用了,不过还是要先进行)
conda init
然后把poetry的创建虚拟环境功能关了
poetry config virtualenvs.create false
然后再到这个环境里面使用poetry,参考别人的文章。
Python包管理之poetry基本使用 - 知乎 (zhihu.com)https://zhuanlan.zhihu.com/p/110721747就这样,你已经用conda实现了虚拟环境的建立,用poetry实现了依赖管理,当然你不可能用基础的命令行开发,肯定要用到编辑器吧,而我用的就是vscode,(此处默认已经安装了以下拓展)
首先用vscode打开项目文件夹:
第一步:换到刚刚创建conda虚拟环境左下角位置,后面标注了conda(第三个坑,因为这是虚拟环境,不能使用默认解释器)
第二步:将vscode默认终端换成cmd(必须,因为vs code默认终端为powershell,而powershell无法使用conda命令,所以在此环境下,无法进入虚拟环境。)
vscode如何修改默认终端 (windows)-百度经验 (baidu.com)https://jingyan.baidu.com/article/59703552315036cfc00740aa.html修改为cmd之后,当你进入终端之后就会发生这样的变化
这样就表示 你越过了所有大坑,可以快乐的使用vscode写代码了。
(对了还有一点,vscode的run code功能需要自己修改配置或者使用run python file或者f5,(因为run code使用的是python默认环境,而不是当前环境,会显示
ModuleNotFoundError: No module named 'jieba')修改方法也很简单,就是命令选择一个python路径就行了,此处应该算最后一个小坑)
接下来总结一下啊,为什么要混合使用conda与poetry:
1.conda可以进行方便的虚拟环境(尤其是不同的python版本)创建,多个环境独立。
2.conda也可以下载一些非python编写的库,具体自行百度
而poetry则是便于管理依赖环境,poetry有着很强的依赖管理能力,当有一堆库的时候也能很好的管理依赖关系,因此利用conda创建虚拟环境,poetry管理虚拟环境。