一. 阿里云服务器ECS
每日10点,均有阿里云服务器的免费申请,也许是官方庆祝十九大召开吧,幸运的抢到一份。
系统环境配置:
操作系统:CentOS 7.3.1611
二. pyenv vs virtualenv
什么是pyenv和virtualenv,本文不做详述,请自行百度,本文只交代安装方法和步骤。
1. pyenv的安装使用
自动安装方式(推荐,这里也是使用该方式安装,自动安装会自带插件):
curl -L https://raw.githubusercontent.com/yyuu/pyenv-installer/master/bin/pyenv-installer | bash
手动安装方式:
在云服务器上执行cd命令,进入你想要安装的目录,建议路径为:$HOME/.pyenv
因为默认情况,CentOS 7 没有安装git,所以执行以下命令安装,更多内容请查询git官方文档
yum install git-core
$ cd ~
$ git clone git://github.com/yyuu/pyenv.git .pyenv
设置环境变量,ps:首先要检查下系统的配置文件是否为~/.bash_profile.
$ echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bash_profile
$ echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bash_profile
增加垫片路径
echo 'eval "$(pyenv init -)"' >> ~/.bash_profile
CentOS下使bash_profile生效的方式
source ./.bash_profile
ps: 注意 .bash_profile和/etc/profile的区别,每个用户都有自己的.bash_profile文件,为用户单独设置环境信息,而/etc/profile为所有用户设置环境信息。故而另一种配置环境变量的方法如下:
配置环境变量:
touch /etc/profile.d/pyenv.sh
vim
/etc/profile.d/pyenv.sh
添加内容:
export
PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
if
which pyenv > /dev/null; then eval "$(pyenv init -)";
fi
source/etc/profile.d/pyenv.sh
2. pyenv 常用命令
python配置
如果pyenv
$ pyenv versions-- 查看系统当前安装的python列表
如果pyenv install的方式无法安装成功,那就要考虑手工方式
A.安装依赖包,在pyenv install 2.7.10版本前,centos更新以下依赖包,避免莫名奇妙的安装错误。
yum install readline readline-devel readline-static -y
yum install openssl openssl-devel openssl-static -y
yum install sqlite-devel -y
yum install bzip2-devel bzip2-libs -y
yum install git -y
yum install gcc-c++ -y
$ pyenv install -v 3.5.1-- 安装python
手工方式:在$PYENV_ROOT/versions/2.7.10目录下执行
wget https://www.python.org/ftp/python/2.7.10/Python-2.7.10.tgz
tar zxf Python-2.7.10.tgz;
cd Python-2.7.10;
./configure --prefix=$PYENV_ROOT/versions/2.7.10;make && make install && make clean
$ pyenv uninstall 2.7.3-- 卸载python
$ pyenv rehash-- 创建垫片路径(为所有已安装的可执行文件 (如:~/.pyenv/versions//bin/) 创建 shims,因此,每当你增删了 Python 版本或带有可执行文件的包(如 pip)以后,都应该执行一次本命令)
python切换
$ pyenv global 3.4.0-- 设置全局的 Python 版本,通过将版本号写入 ~/.pyenv/version 文件的方式。
$ pyenv local 2.7.3-- 设置面向程序的本地版本,通过将版本号写入当前目录下的 .python-version 文件的方式。通过这种方式设置的 Python 版本优先级较 global 高。
pyenv 会从当前目录开始向上逐级查找 .python-version 文件,直到根目录为止。若找不到,就用 global 版本。
$ pyenv shell pypy-2.2.1-- 设置面向 shell 的 Python 版本,通过设置当前 shell 的 PYENV_VERSION 环境变量的方式。这个版本的优先级比 local 和 global 都要高。--unset 参数可以用于取消当前 shell 设定的版本。
$ pyenv shell --unset
python优先级
shell > local > global
二. pyenv 插件: pyenv-virtualenv
自动安装
使用自动安装pyenv 后,它会自动安装部分插件,通过pyenv-virtualenv插件可以很好的和virtualenv结合:
[root@linux3311 ~]# cd .pyenv/plugins/
[root@linux3311 plugins]# ll
insgesamt 24
drwxr-xr-x. 4 root root 4096 19. Jun 05:17 pyenv-doctor
drwxr-xr-x. 5 root root 4096 19. Jun 05:18 pyenv-installer
drwxr-xr-x. 4 root root 4096 19. Jun 05:18 pyenv-update
drwxr-xr-x. 7 root root 4096 19. Jun 05:18 pyenv-virtualenv
drwxr-xr-x. 4 root root 4096 19. Jun 05:18 pyenv-which-ext
drwxr-xr-x. 5 root root 4096 19. Jun 05:17 python-build
手动安装
git clone https://github.com/pyenv/pyenv-virtualenv.git /root/.env/plugins/pyenv-virtualenv
使用
创建虚拟环境
$ pyenv virtualenv 2.7.10 my-virtual-env-2.7.10
若不指定python 版本,会汇报认使用当前环境python版本。
列出当前虚拟环境
pyenv virtualenvs
激活虚拟环境
pyenv activate
退出虚拟环境
pyenv deactivate
删除虚拟环境
pyenv uninstall my-virtual-env
以上内容参考转载自以下文章,本人仅按照内容进行阿里云服务器的操作,并补充内容和心得。
作者:pylixm
链接:http://www.jianshu.com/p/890d1c72855e
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
网友评论