【问题标题】:Why can't you install Geopandas in the base environment?为什么不能在基础环境中安装 Geopandas?
【发布时间】:2022-01-15 15:27:38
【问题描述】:

为什么要创建虚拟环境来获取包。

【问题讨论】:

  • 就在过去一周回答 SO 问题时,我遇到了 4 种不同的依赖项不起作用。因此,如果我不使用虚拟环境,我将不得不完全重建我的 python 环境 4 次。拆除 venv 并重建要简单得多(2 分钟 vs 1 小时 +)
  • 是的,你的问题的技术答案是“你可以将它安装在你的基础环境中,但你可能不应该”。 Geopandas 是一个非常复杂的库,有很多 python 和非 python 依赖项。安装在基础环境中的任何东西都有在基础环境和命名环境中可用的风险(如果没有被覆盖)。因此,如果您有另一个没有安装 gdal 或其他依赖项的环境,然后您不小心将其导入,您将进入混合环境的可怕依赖项冲突状态。其他问题也可能发生,但这很容易解释。

标签: pandas geopandas


【解决方案1】:

您应该始终为每个项目使用某种形式的虚拟环境。不同的库在其他库的特定版本范围内具有不同的依赖关系。所以当你有一个包组合时,你应该使用一些东西来跟踪所有这些版本。

当您刚开始时,这可能不是问题,但随着时间的推移,您将拥有较旧的项目和具有非常不同依赖集的项目。那么你就不会希望你的基础环境因为版本冲突而搞砸了。

两个不错的选择:

  1. 使用pyenv 在 Python 版本之间切换,使用Poetry 管理虚拟环境和依赖项(我个人最喜欢的)
  2. 使用anaconda 完成所有三个操作(python 版本、处理依赖冲突并具有虚拟环境)

【讨论】:

  • 谢谢。确保现在也这样做。
猜你喜欢
  • 1970-01-01
  • 2018-11-17
  • 1970-01-01
  • 1970-01-01
  • 2022-01-21
  • 2022-12-20
  • 1970-01-01
  • 1970-01-01
  • 2019-01-05
相关资源
最近更新 更多