管理 Python 版本和库需要什么?
What do I need for managing Python versions and libralies?
我是 Python 的新手,打算在下一份工作中使用 Python。
我现在使用 pyenv
对 Python 及其库进行版本控制,但一些博客文章说我们不一定需要 pyenv
进行版本控制。
有人说我们需要pyenv
和virtualenv
,其他人说我们只需要venv
,
和/或什么都不需要...
有点复杂
我想如果我不使用 pyenv
这样的版本控制工具,我在使用需要 Python2 的工具时会遇到麻烦,例如 npm
.
- 我只用Python3
- 我将在许多项目中进行开发,包括 Web 开发和数据分析 Python
- 我使用 MacOS
在这些条件下,管理我的 Python 环境的最佳堆栈是什么?
pyenv
管理不同的 Python 版本。如果您开发多个使用不同 Python 版本的项目,它会很有用。如果您打算只使用 Python 3,则不必使用 pyenv
.
不同的虚拟环境包装器(virtualenv
、virtualenvwrapper
)可帮助您隔离不同项目的 Python 环境。例如。如果你打算使用 requests
库,虚拟环境将使你能够在不同的项目中使用不同版本的 requests
库(例如,在某些时候你可以在项目上更新到新的 requests
版本A,但决定在项目 B 上保留旧版本)。即使是单机项目,还是建议使用虚拟环境。
我个人更喜欢 virtualenvwrapper
而不是 virtualenv
。它使创建环境、向环境添加一些自定义 post 激活逻辑(例如设置环境变量或更改工作目录)以及在活动环境之间切换变得非常简单。
我是 Python 的新手,打算在下一份工作中使用 Python。
我现在使用 pyenv
对 Python 及其库进行版本控制,但一些博客文章说我们不一定需要 pyenv
进行版本控制。
有人说我们需要pyenv
和virtualenv
,其他人说我们只需要venv
,
和/或什么都不需要...
有点复杂
我想如果我不使用 pyenv
这样的版本控制工具,我在使用需要 Python2 的工具时会遇到麻烦,例如 npm
.
- 我只用Python3
- 我将在许多项目中进行开发,包括 Web 开发和数据分析 Python
- 我使用 MacOS
在这些条件下,管理我的 Python 环境的最佳堆栈是什么?
pyenv
管理不同的 Python 版本。如果您开发多个使用不同 Python 版本的项目,它会很有用。如果您打算只使用 Python 3,则不必使用 pyenv
.
不同的虚拟环境包装器(virtualenv
、virtualenvwrapper
)可帮助您隔离不同项目的 Python 环境。例如。如果你打算使用 requests
库,虚拟环境将使你能够在不同的项目中使用不同版本的 requests
库(例如,在某些时候你可以在项目上更新到新的 requests
版本A,但决定在项目 B 上保留旧版本)。即使是单机项目,还是建议使用虚拟环境。
我个人更喜欢 virtualenvwrapper
而不是 virtualenv
。它使创建环境、向环境添加一些自定义 post 激活逻辑(例如设置环境变量或更改工作目录)以及在活动环境之间切换变得非常简单。