linux安装python-pyenv环境

十二月 23, 2018

1.安装git,用于获取安装包

yum install git -y

2.安装python编译环境的依赖包

yum -y install gcc make patch gdbm-devel openssl openssl-devel openssl-static sqlite-devel readline readline-devel readline-static zlib-devel bzip2-devel libffi-devel

# The Python ssl extension was not compiled. Missing the OpenSSL lib?
# yum install openssl openssl-devel openssl-static -y

# 关于在centos下安装python3.7.0以上版本时报错ModuleNotFoundError: No module named '_ctypes'的解决办法
# 3.7版本需要一个新的包libffi-devel,安装此包之后再次进行编译安装即可。

3.安装pyenv

curl -L https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenv-installer | bash

# 注意 安装完了后会有以下提示需要手动进行
# WARNING: seems you still have not added 'pyenv' to the load path.

# Load pyenv automatically by adding
# the following to ~/.bashrc:

export PATH="/home/python/.pyenv/bin:$PATH"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"

source ~/.bashrc

如果curl出现 curl: (35) SSL connect error ,是nss版本低的问题,更新它,然后再执行以上命令。

> yum update nss    #或者yum update
>

4.使用pyenv安装指定的python版本

pyenv install --list        #查看远程有效版本

pyenv install 2.7.15 -v     #安装2.7.15版本
 
pyenv uninstall 2.7.15      #卸载python

5.pyenv的python版本控制

6.Virtualenv 虚拟环境设置

为什么要使用虚拟环境?

将创建一个名为py2715的虚拟环境(目录),并且将 python 2.7.15 对应的bin和lib复制到该环境中。当该虚拟环境被激活后,所有的 python 操作都只在该环境中进行,从而和其它 python 内容隔离。
pyenv-virtualenv 支持自动激活和退出虚拟环境。首先确保在 shell 配置文件中添加了
eval "$(pyenv init -)" eval "$(pyenv virtualenv-init -)"

接着在需要使用虚拟环境的目录(通常是项目目录)中:建立一个.python-version的文本文件,将虚拟环境名称(如py2715)写在里面即可。之后每次进/出该目录时,虚拟环境都将自动激活/退出。

7.导出包

# 导出此虚拟环境下的包
pip freeze > requirement.txt

# 安装包到新的环境下
pip install -r requirement.txt

8.安装jupyter

pip install jupyter

jupyter notebook password   #修改登录密码

jupyter notebook --ip=43.225.157.148 > jupyter.log 2>&1 &   #后台运行并记录日志