加入收藏 | 设为首页 | 会员中心 | 我要投稿 温州站长网 (https://www.0577zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 搭建环境 > Windows > 正文

MacOS系统中如何设置Python虚拟环境

发布时间:2019-07-12 02:56:25 所属栏目:Windows 来源:Matthew Broberg
导读:副标题#e# 使用 pyenv 和 virtualwrapper 来管理你的虚拟环境,可以避免很多困惑。 作为 Python 开发者和 MacOS 用户,拿到新机器首先要做的就是设置 Python 开发环境。下面是最佳实践(虽然我们已经写过 在 MacOS 上管理 Python 的其它方法)。 预备 首先
副标题[/!--empirenews.page--]

/uploads/allimg/c190711/1562U3X134J0-11222.jpg

使用 pyenv 和 virtualwrapper 来管理你的虚拟环境,可以避免很多困惑。

作为 Python 开发者和 MacOS 用户,拿到新机器首先要做的就是设置 Python 开发环境。下面是最佳实践(虽然我们已经写过 在 MacOS 上管理 Python 的其它方法)。

预备

首先,打开终端,在其冰冷毫无提示的窗口输入 xcode-select --install 命令。点击确认后,基本的开发环境就会被配置上。MacOS 上需要此步骤来设置本地开发实用工具库,根据 OS X Daily 的说法,其包括 ”许多常用的工具、实用程序和编译器,如 make、GCC、clang、perl、svn、git、size、strip、strings、libtool、cpp、what 及许多在 Linux 中系统默认安装的有用命令“。

接下来,安装 Homebrew, 执行如下的 Ruby 脚本。

  1. ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

如果你像我一样,对随意就运行的来源于互联网的脚本心存疑虑的话,可以点击上面的脚本去仔细看看其具体功能。

一旦安装完成后,就恭喜了,你拥有了一个优秀的包管理工具。自然的,你可能接下来会执行 brew install python 或其他的命令。不要这样,哈哈!Homebrew 是为我们提供了一个 Python 的管理版本,但让此工具来管理我们的 Python 环境话,很快会失控的。我们需要 pyenv,一款简单的 Python 版本管理工具,它可以安装运行在 许多操作系统 上。运行如下命令:

  1. $ brew install pyenv

想要每次打开命令提示框时 pyenv 都会运行的话,需要把下面的内容加入你的配置文件中(MacOS 中默认为 .bash_profile,位于家目录下):

  1. $ cd ~/
  2. $ echo 'eval "$(pyenv init -)"' >> .bash_profile

添加此行内容后,每个终端都会启动 pyenv 来管理其 PATH 环境变量,并插入你想要运行的 Python 版本(而不是在环境变量里面设置的初始版本。更详细的信息,请阅读 “如何给 Linux 系统设置 PATH 变量”)。打开新的终端以使修改的 .bash_profile 文件生效。

在安装你中意的 Python 版本前,需要先安装一些有用的工具,如下示:

  1. $ brew install zlib sqlite

pyenv 依赖于 zlib 压缩算法和 SQLite 数据库,如果未正确配置,往往会导致构建问题。将这些导出配置命令加入当前的终端窗口执行,确保它们安装完成。

  1. $ export LDFLAGS="-L/usr/local/opt/zlib/lib -L/usr/local/opt/sqlite/lib"
  2. $ export CPPFLAGS="-I/usr/local/opt/zlib/include -I/usr/local/opt/sqlite/include"

现在准备工作已经完成,是时候安装一个适合于现代人的 Python 版本了:

  1. $ pyenv install 3.7.3

去喝杯咖啡吧,挑些豆类,亲自烧烤,然后品尝。说这些的意思是上面的安装过程需要一段时间。

添加虚拟环境

一旦完成,就可以愉快地使用虚拟环境了。如没有接下来的步骤的话,你只能在你所有的工作项目中共享同一个 Python 开发环境。使用虚拟环境来隔离每个项目的依赖关系的管理方式,比起 Python 自身提供的开箱即用功能来说,更加清晰明确和更具有重用性。基于这些原因,把 virtualenvwrapper 安装到 Python 环境中吧:

  1. $ pyenv global 3.7.3
  2. # Be sure to keep the $() syntax in this command so it can evaluate
  3. $ $(pyenv which python3) -m pip install virtualenvwrapper

再次打开 .bash_profile 文件,把下面内容添加进去,使得每次打开新终端时它都有效:

  1. # We want to regularly go to our virtual environment directory
  2. $ echo 'export WORKON_HOME=~/.virtualenvs' >> .bash_profile
  3. # If in a given virtual environment, make a virtual environment directory
  4. # If one does not already exist
  5. $ echo 'mkdir -p $WORKON_HOME' >> .bash_profile
  6. # Activate the new virtual environment by calling this script
  7. # Note that $USER will substitute for your current user
  8. $ echo '. ~/.pyenv/versions/3.7.3/bin/virtualenvwrapper.sh' >> .bash_profile

关掉终端再重新打开(或者运行 exec /bin/bash -l 来刷新当前的终端会话),你会看到 virtualenvwrapper 正在初始化环境配置:

  1. $ exec /bin/bash -l
  2. virtualenvwrapper.user_scripts creating /Users/moshe/.virtualenvs/premkproject
  3. virtualenvwrapper.user_scripts creating /Users/moshe/.virtualenvs/postmkproject
  4. virtualenvwrapper.user_scripts creating /Users/moshe/.virtualenvs/initialize
  5. virtualenvwrapper.user_scripts creating /Users/moshe/.virtualenvs/premkvirtualenv
  6. virtualenvwrapper.user_scripts creating /Users/moshe/.virtualenvs/postmkvirtualenv
  7. virtualenvwrapper.user_scripts creating /Users/moshe/.virtualenvs/prermvirtualenv
  8. virtualenvwrapper.user_scripts creating /Users/moshe/.virtualenvs/postrmvirtualenv
  9. virtualenvwrapper.user_scripts creating /Users/moshe/.virtualenvs/predeactivate
  10. virtualenvwrapper.user_scripts creating /Users/moshe/.virtualenvs/postdeactivate
  11. virtualenvwrapper.user_scripts creating /Users/moshe/.virtualenvs/preactivate
  12. virtualenvwrapper.user_scripts creating /Users/moshe/.virtualenvs/postactivate
  13. virtualenvwrapper.user_scripts creating /Users/moshe/.virtualenvs/get_env_details

(编辑:温州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读