为什么 Python 会有.venv 虚拟环境的概念?

查看 297|回复 20
yinmin   
python 很多包不同版本不兼容,又无法同时安装用一个包的多个版本。如果 1 台机器运行多个 python 程序,1 个程序用了高版本的包,另外 1 个程序用了低版本的包,那么这 2 个程序就无法同时使用,为了解决类似问题,需要使用 venv
bocchi1amos
OP
  
@cslive 也没有类似 maven 隔离的工具吗?
bocchi1amos
OP
  
@yinmin python 是否有类似 maven 这类自动构建依赖隔离的工具?
lonewolfakela   
@bocchi1amos #12 venv 就是你要的隔离工具呀,只不过具体实现方案和 maven 差别有些大就是了
aapeli   
python 不需要编译构建,python 因此没有构建工具,依赖隔离的工具可以看 miniconda
Maerd   
venv 实际上就可以理解成 node 的 node_modules
xiaowowo   
可以了解一下 poetry https://python-poetry.org/
kneo   
你搞 java 难道没用过 pom.xml ?一个意思。只不过 Python 没出息,抄的 node_modules 那一套。虽然不咋地,比没有强点。
sjtulyj   
用 venv 有个好处, 不用额外装 pip
venv 会给你一个 pip
morgan1freeman   


别问 问就是历史原因,type hints 还导致循环依赖呢,python3 设计的时候就没考虑过这些,它跟 javascript 一样 设计就是一门简单的语言,奈何后面胶水 胶的太好了,javascript 甚至更绝,动态类型 1 "1" 都不用区别了,python 好歹还是强类型的动态语言, javascript "666"/2 都能正常运行
您需要登录后才可以回帖 登录 | 立即注册

返回顶部