比较高级的python虚拟机环境和包管理器有两个选择:pipenv和poetry,它们不仅可以帮助我们进行“虚拟环境管理”:创建虚拟环境删除虚拟environment也可以帮我们做“包管理”,但是我不推荐使用它们来进行包管理!为什么?因为狗吃老鼠。pipenv和poetry安装包的时候,我很喜欢狗和老鼠,帮我们做了一堆额外的版本冲突检查:慢,不知道这两个产品的检查逻辑是什么,很慢。pip本身也有“版本冲突检查”。不过pipenv和poetry做的比较多,随便装个东西都要等上几个小时(相比之下,直接用pip只需要几秒)。如果你聪明的话,如果你在虚拟环境的“当前路径”下有requirements.txt,他们会自动帮你安装requirements.txt中的所有包,因为上面的“慢”原因,这会导致没完没了给你不好的经历。所以:不要使用pipenv和poetry来进行包管理(另外,不要叫requirements.txtrequirements.txt,应该叫requirements-prd.txt和requirements-dev.txt)而是使用pipenv和poetry来进行包管理,因为对应unix等内置python的os,虚拟环境是刚需。pipenv和诗歌之间如何选择?我为什么选择pipenv?pipenv的api与pip高度相似。相比于不伦不类的诗歌api,学习成本要低很多。之前在网上看了很多批评pipenv的文章,但是2022年都是放屁。
