Python开发环境---Linux下

一、pyenv

pyenv是一个Python版本管理工具,它能够进行全局的Python版本切换,也可以为单个项目提供对应的Python版本。使用pyenv以后,可以在服务器上安装多个不同的Python版本,也可以安装不同的Python实现。不同Python版本之间的切换也非常简单。pyenv官方地址https

1、安装pyenv,在命令行下输入:
$ curl -L https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenv-installer | bash
### 默认安装到当前用户的工作目录下的.pyenv,我们可以查看一下
$ cd ~
$ ls -la
如果安装过git,也可以使用以下安装方式安装
 $ git clone https://github.com/pyenv/pyenv.git ~/.pyenv
2、将安装路径写入 ~/.bashrc
# 会显示出来这个文件
root-li@rootli-virtual-machine:~$ ll
#将以下三条语句写入 ~/.bashrc  
export PATH="/home/zhu/.pyenv/bin:$PATH"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"
3、让配置立刻生效
$ source  ~/.bashrc
#查看是否成功,如果路径第一个结尾是shims则表示成功
$ echo $PATH
4、更新一下
$ pyenv update
5、列出pyenv中所有可用的python版本
  python@ubuntu:~$pyenv versions
  	 system
   	 3.5.4
   * 3.6.4 (set by /home/python/.pyenv/version)  # *表示当前使用的3.6.4版本
6、选定指定的python版本
  python@ubuntu:~$ pyenv global 3.5.4  #设置指定的版本
7、删除指定的python版本
  python@ubuntu:~$ pyenv uninstall 3.5.4

二、安装python

#1.在安装python之前,我们必须要安装python所需要的依赖包,这个必须要安装,安装会失败的:

  $ sudo apt-get install libc6-dev gcc
  $ sudo apt-get install -y make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm

#2. 安装python

 $ pyenv install 3.6.4 -v  #-v 以日志模式显示安装过程
  #因为pyenv会自动到github上下载,速度超慢,所以一般会选择使用curl或者wget下载到~/.pyenv/cache下,然后再用pyenv安装,下面是可选的安装模式
  $ cd ~/.pyenv
  $ sudo mkdir cache
  $ wget -c http://mirrors.sohu.com/python/3.6.4/Python-3.6.4.tar.xz -P  ~/.pyenv/cache/
  $ pyenv install 3.6.4 -v

#3.更新pyenv数据库

 $ pyenv rehash

#4.列出所安装的python版本

$ pyenv versions

#5.切换python版本

  $ pyenv  global 3.6.4

#6.验证版本

  $ python

三、创建项目目录

1、创建项目目录

$ sudo mkdir -p project/blog
$ cd project/blog

2、创建项目的虚拟环境

#注意python版本号必须是已经安装的,否则会报错
用法:$ pyenv virtualenv 3.6.5  env36

3、切换到虚拟环境

python@ubuntu:/project/blog$ pyenv activate env36
(env36) python@ubuntu:/project/blog$  # (env36)表示该项目处于虚拟环境中

#4. 切出虚拟环境

(env36) python@ubuntu:/project/blog$ pyenv deactivate env36

######到此,开发环境就配置好了,后面就是开始开发项目。

猜你喜欢

转载自blog.csdn.net/Mr_791063894/article/details/84674282