安装
Unix/MacOS
Homebrew(macOS)
brew update
brew install pyenv
官方自动脚本
如果没有安装Homebrew,可以用pyenv的官方安装脚本,脚本细节详见这里
curl https://pyenv.run | bash
源码安装
1、选择合适的位置拉源码到本地
mv ~/.pyenv ~/.pyenv.bak
git clone https://github.com/pyenv/pyenv.git ~/.pyenv
2、(可选)编译动态Bash扩展,让Pyenv运行更快。
cd ~/.pyenv && src/configure && make -C src
Windows
Pyenv官方并不支持Windows,也没法在WSL以外的环境运行。建议用@kirankotari的pyenv-win
分支。
设置Shell环境
- 设置环境变量
PYENV_ROOT
指向你希望存放Pyenv数据的目录,默认是$HOME/.pyenv
- 将可执行文件
pyenv
加入到PATH
变量 - 将
eval "$(pyenv init -)"
追加到你的shell启动脚本(如.zshrc、.bashrc)中,启用自动补全。当然,你可以可以单独执行这一命令来临时启用
以下配置适用于绝大多数常见场景。
bash
正常情况下只需要将如下内容加入~/.bashrc
,按命令操作
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc
echo 'command -v pyenv >/dev/null || export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(pyenv init -)"' >> ~/.bashrc
如果文件系统上存在 ~/.profile
, ~/.bash_profile
or ~/.bash_login
这些文件,那就也加入一下
for target_file in "~/.profile" "~/.bash_profile" "~/.bash_login"; do
if [ -f $target_file ]; then
echo 'export PYENV_ROOT="\$HOME/.pyenv"' >> $target_file
echo 'command -v pyenv >/dev/null || export PATH="\$PYENV_ROOT/bin:\$PATH"' >> $target_file
echo 'eval "\$(pyenv init -)"' >> $target_file
fi
done
Zsh
同理,按命令操作
for target_file in "~/.zshrc" "~/.zprofile" "~/.zlogin"; do
if [ -f $target_file ]; then
echo 'export PYENV_ROOT="\$HOME/.pyenv"' >> $target_file
echo 'command -v pyenv >/dev/null || export PATH="\$PYENV_ROOT/bin:\$PATH"' >> $target_file
echo 'eval "\$(pyenv init -)"' >> $target_file
fi
done
重启Shell
退出重进Shell,或者执行
exec "$SHELL"
安装Python编译依赖
按这份文档 Install Python build dependencies,安装好编译Python所需的依赖,使用Pyenv安装Python时会需要。