pyenv管理多版本python及常见错误处理
2018-01-17 11:25
288 查看
(一)安装pyenv
$ git clone git://github.com/yyuu/pyenv.git ~/.pyenv
$ echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc
$ echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc
$ echo 'eval "$(pyenv init -)"' >> ~/.bashrc
$ exec $SHELL -l
(二)使用pyenv
$ pyenv versions
system
2.7.12
* 3.6.0 (set by /home/huayun/.python-version)
(三)一些错误及解决方法
3.1 缺OpenSSL lib
sudo apt-get install libssl-dev
3.2 pip使用报错
$ pip list
Traceback (most recent call last):
File "/home/huayun/.pyenv/versions/3.6.0/bin/pip", line 4, in <module>
import re
File "/home/huayun/.pyenv/versions/3.6.0/lib/python3.6/re.py", line 142, in <module>
class RegexFlag(enum.IntFlag):
AttributeError: module 'enum' has no attribute 'IntFlag'
解决方法:
unset
PYTHONPATH
$ git clone git://github.com/yyuu/pyenv.git ~/.pyenv
$ echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc
$ echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc
$ echo 'eval "$(pyenv init -)"' >> ~/.bashrc
$ exec $SHELL -l
(二)使用pyenv
$ pyenv versions
system
2.7.12
* 3.6.0 (set by /home/huayun/.python-version)
$ pip list DEPRECATION: The default format will switch to columns in the future. You can use --format=(legacy|columns) (or define a format=(legacy|columns) in your pip.conf under the [list] section) to disable this warning. pip (9.0.1) setuptools (28.8.0)
# 使用 python-build(一个插件) 安装一个 Python 版本,到 $PYENV_ROOT/versions 路径下。 $ pyenv install -v 2.7.3 # 卸载 $ pyenv uninstall 2.7.3 # 为所有已安装的可执行文件 (如:~/.pyenv/versions/*/bin/*) 创建 shims, # 因此,每当你增删了 Python 版本或带有可执行文件的包(如 pip)以后,都应该执行一次本命令 $ pyenv rehash # 设置全局的 Python 版本,通过将版本号写入 ~/.pyenv/version 文件的方式。 $ pyenv global 3.4.0 # 设置面向程序的本地版本,通过将版本号写入当前目录下的 .python-version 文件的方式。 # 通过这种方式设置的 Python 版本优先级较 global 高。pyenv 会从当前目录开始向上逐级查找 .python-version 文件,直到根目录为止。 #若找不到,就用 global 版本。 $ pyenv local 2.7.3 # 设置面向 shell 的 Python 版本,通过设置当前 shell 的 PYENV_VERSION 环境变量的方式。 # 这个版本的优先级比 local 和 global 都要高。--unset 参数可以用于取消当前 shell 设定的版本。 $ pyenv shell pypy-2.2.1 $ pyenv shell --unset
(三)一些错误及解决方法
3.1 缺OpenSSL lib
sudo apt-get install libssl-dev
3.2 pip使用报错
$ pip list
Traceback (most recent call last):
File "/home/huayun/.pyenv/versions/3.6.0/bin/pip", line 4, in <module>
import re
File "/home/huayun/.pyenv/versions/3.6.0/lib/python3.6/re.py", line 142, in <module>
class RegexFlag(enum.IntFlag):
AttributeError: module 'enum' has no attribute 'IntFlag'
解决方法:
unset
PYTHONPATH
相关文章推荐
- Mac OS 上用pyenv和pyenv-virtualenv管理多个Python多版本及虚拟环境
- python多版本管理工具pyenv的安装
- mac多版本python管理工具pyenv
- pyenv 安装(管理多个版本python及安装)
- 使用pyenv管理不同版本的python
- Python多版本管理软件pyenv的安装应用及pip的使用讲解
- 使用 pyenv 管理多个版本 python 环境
- python版本管理工具pyenv和包管理工具pipenv
- Mac OSX python多版本管理工具:pyenv 和 virtualenv搭建
- 【Python】03、python多版本管理工具pyenv
- Linux 下的 Python 多版本管理(pyenv)
- Entity Framework7 入门之全功能.NET版本下使用EF7(含源码)另附数据迁移常见错误处理
- Mac OSX python多版本管理工具:pyenv 和 virtualenv搭建
- 使用python中常见的错误及处理办法(1)
- Python多版本管理软件pyenv的安装应用及pip的使用讲解
- Python多版本共存管理工具之pyenv
- 详解使用 pyenv 管理多个版本 python 环境
- Ubuntu下利用pyenv管理各Python版本
- 在ubuntu下pyenv管理python的多个版本
- Python多版本管理-pyenv