序
自用笔记直接上代码。
Homebrew
安装Homebrew(已经安装忽略)
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
pyenv版本管理
安装
# homebrew安装
brew update
brew install pyenv
配置
export PYENV_ROOR="$HOME/.pyenv"
export PATH=$PYENV_ROOT/shims:$PATH
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"
source一下配置文件(如source ~/.bash_profile
)
简单使用
# 查看当前版本
pyenv version
# 查看所有版本
pyenv versions
# 查看所有可安装的版本
pyenv install --list
# 安装指定版本
pyenv install 3.7.0
# 安装新版本后rehash一下
pyenv rehash
# 删除指定版本
pyenv uninstall 3.5.2
# 指定全局版本
pyenv global 3.7.0
# 指定多个全局版本, 3版本优先
pyenv global 3.7.0 2.7.15
# 实际上当你切换版本后, 相应的pip和包仓库都是会自动切换过去的
包管理插件pyenv-virtualenv
安装
brew install pyenv-virtualenv
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"
使用
# 创建一个3.7.0版本的虚拟环境, 命名为v370env, 然后激活虚拟环境
$ pyenv virtualenv 3.7.0 v370env
$ pyenv activate v370env
# 关闭虚拟环境
$ pyenv deactivate v370env
其他
切换虚拟环境:pyenv activate <folder_name>
退出虚拟环境:pyenv deactivate
列出当前所有的虚拟环境:pyenv virtualenvs
删除虚拟环境:pyenv virtualenv-delete <folder_name>
当切换python解释器的时候对应的pip和包库也会一并切换过去, 而且可以为指定版本的解释器创建项目所需的虚拟环境, 切换的时候也异常简单, 个人常用的做法是为每个项目创建不同的虚拟环境, 当进入该环境的时候就可以随便浪而不用担心影响到其它项目, 搭配Pycharm使用效果更佳.
tensorflow
安装
在前面创建的虚拟环境下
pip install --upgrade pip
pip list # 显示在虚拟环境中安装的软件包
直接pip安装
pip install --upgrade tensorflow
验证安装效果:
python -c
"import tensorflow as tf;
tf.enable_eager_execution();
print(tf.reduce_sum(tf.random_normal([1000, 1000])))"
无异常大概长这样
相关项目和文档地址:
pyenv:https://github.com/pyenv/pyenv
pyenv-virtualenv:https://github.com/pyenv/pyenv-virtualenv
tensorflow: https://www.tensorflow.org/install/pip?hl=zh-cn
知乎:https://zhuanlan.zhihu.com/p/36402791
Q.E.D.