在centos上操做html
# yum install curl git-corepython
# curl -L https://raw.github.com/yyuu/pyenv-installer/master/bin/pyenv-installer | bashlinux
这个命令会把pyenv安装到当前用户的 ~/.pyenv目录下.c++
同时, 咱们还须要把下面代码存到~/.bashrc文件中:git
# vim ~/.bashrcgithub
export PYENV_ROOT="${HOME}/.pyenv"sql
if [ -d "${PYENV_ROOT}" ] ; thenubuntu
export PATH="${PYENV_ROOT}/bin:${PATH}"vim
eval "$(pyenv init -)"centos
fi
这段代码的做用主要是指明pyenv的位置, 以便之后能够直接在命令行里面运行pyenv命令。 保存在~/.bashrc 文件中是为了每次用户登录后自动生效。因此若是你是第一次运行命令而且没有注销的话, 这一段是不会生效的, 咱们还须要运行下面的命令令其生效
# source ~/.bashrc
而后就能够直接在命令行里面敲pyenv了。
首先咱们能够查看一下有哪些版本的python 能够安装
# pyenv install --list
接下来, 咱们安装 python3.5.3版本
# pyenv install 3.5.3
安装完毕后, 咱们能够查看安装的状况
(修改增长:
(若是安装过程出现相似以下错误:
checking for--enable-universalsdk... nochecking for --with-universal-archs... 32-bitchecking MACHDEP... linuxchecking for --without-gcc... nochecking for gcc... nochecking for cc... nochecking for cl.exe... no)
缘由是 源码编译,提示缺乏gcc cc cl.exe解决方案centos:
yum install -y gcc glibc
yum -y install gcc+ gcc-c++
ubuntu:apt-get update gccapt-get install g++
继续安装 若出现相似以下:
Installing Python-3.4.4...
WARNING: The Python bz2 extension was not compiled.Missing the bzip2 lib?
WARNING: The Python readline extension was not compiled.Missing the GNU readline lib?
ERROR: The Python ssl extension was not compiled. Missingthe OpenSSL lib?
Please consult to the Wiki page to fix the problem.https://github.com/yyuu/pyenv/wiki/Common-build-problems BUILD FAILED (CentOSLinux 7 using python-build 20160509-25-g4c654d7) Inspect or clean up theworking tree at /tmp/python-build.20160607105740.3166 Results logged to/tmp/python-build.20160607105740.3166.log Last 10 log lines: (cd/root/.pyenv/versions/3.4.4/share/man/man1; ln -s python3.4.1 python3.1) if test"xupgrade" != "xno" ; then \ case upgrade in \ upgrade)ensurepip="--upgrade" ;; \ install|*) ensurepip="" ;; \ esac;\ ./python -E -m ensurepip \ $ensurepip --root=/ ; \ fi Ignoring ensurepipfailure: pip 7.1.2 requires SSL/TLS
则安装以下依赖:
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
出现以上问题可参考(http://blog.sina.com.cn/s/blog_76923bd80102w9zw.html;http://blog.csdn.net/foryouslgme/article/details/51683654;https://www.jianshu.com/p/228cd025a368;)继续安装python安装完毕!
)
# pyenv versions
输出结果以下:
* system (set by /home/tony/.pyenv/version)
3.5.3
*指向的表明当前使用的版本,经过下面命令来进行版本切换
# pyenv global 3.5.3
若是要卸载某个版本的python, 能够这样:
# pyenv uninstall x.x.x
如今咱们已经安装了多个python版本,可是这还不够, 这时候咱们可使用virtualenv来建立虚拟python环境
virtualenv本是一个独立的工具,官网在这里:https://pypi.python.org/pypi/virtualenv
幸运的是,若是你是安装咱们前面的方式安装pyenv的,那它已经帮咱们以plugin的形式安装好了virtualenv, 咱们只要使用就行了
首先咱们建立一个3.5.3的虚拟环境
# pyenv virtualenv 3.5.3 env35
这条命令在本机上建立了一个名为env35的python虚拟环境,这个环境的真实目录位于:~/.pyenv/versions/
注意,命令中的 ‘3.5.3’ 必须是一个安装前面步骤已经安装好的python版本, 不然会出错。
而后咱们能够继续经过 ‘pyenv versions’ 命令来查看当前的虚拟环境, 结果以下:
* system (set by /home/tony/.pyenv/version)2.7.1
3.5.3
env35
这里咱们能够看到, 除了已经安装的python版本, 咱们多出了一个env35的python虚拟环境
切换到新的虚拟环境的命令为
# pyenv activate env35
接下来咱们的python环境就已经切换到3.5.3的虚拟环境了, 运行 ‘python’ 命令认证
(env35)tony@ubuntu:~$ python
Python3.5.3(r271:86832, May92014,01:07:17)
[GCC4.8.2] on linux3
Type"help","copyright","credits"or"license"formoreinformation.>>>
能够看到, python版本已是3.5.3 并且是在虚拟环境之中 (env35)
下面基本上你就能够在这个虚拟环境里面随心所欲了 :) 不再用担忧系统路径被搞乱的问题了。
若是要切换回系统环境, 运行这个命令便可
# pyenv deactivate
那若是要删除这个虚拟环境呢? 答案简单并且粗暴,只要直接删除它所在的目录就好:
# rm -rf ~/.pyenv/versions/env35/
至此环境搭建大功告成!
上面安装的Python版本自带pip安装工具,,以下项目使用虚拟环境env35,项目目录以下
先启动虚拟环境,而后切换到项目目录下,进行pip安装
# pyenv activate env35
# cd 项目目录
# pip install -r requirements.txt
安装完各个依赖库后,进行以下命令启动该项目
python manage.py runserver -h 0.0.0.0 -p 8080 -threaded