文章连接:https://www.cnblogs.com/zlsgh/p/8485848.html

ubuntu系统下Python虚拟环境的安装和使用

       前言:进行python项目开发的时候,由于不同的项目需要使用不同的资源包和相关的配置,因此创建多个python虚拟环境,在虚拟环境下开发就显得很有必要。

安装虚拟环境

  • 步骤:

  • 打开Linux终端(快捷键Ctrl+Alt+T),输入命令:

sudo apt install python-virtualenv
sudo easy_install virtualenvwrapper

说明:以上两条命令逐条执行,完成后虚拟环境安装完毕。

或者可以使用pip安装,前提是安装了pip,一般python自带了pip:

sudo pip install virtualenv
sudo pip install virtualenvwrapper
  • 说明:安装的结果一模一样,使用任意一种即可。
  • virtualenv是虚拟环境,virtualenvwrapper对virtualenv的命令进行了封装,使得其更加友好。

注意:安装的顺序不能颠倒,virtualenvwrapper必须依赖于virtualenv。

创建虚拟环境

  • 在终端输入如下命令:  mkvirtualenv 虚拟环境名称

如: mkvirtualenv mywork    //会创建一个名为mywork的虚拟环境

创建的虚拟环境都保存在  /home/.virtualenvs  目录下,可以进入这个目录查看;

创建成功后会自动进入该虚拟环境,命令行提示改变;

  • 指定python版本创建虚拟环境:    mkvirtualenv -p python路径 虚拟环境名称

上面的命令执行时,系统会创建默认的python版本的开发环境,一般大家的电脑会同时安装python2和python3版本,有时需要不同的版本创建虚拟环境。

例:  mkvirtualenv -p /usr/bin/python3 mywork

-p 指的是path的简写Py安装的路径,默认安装在/usr/bin/目录下;

如果一时间找不到,使用命令:  whereis python3

在终端命令行搜索,会出现想要的路径。

细节:不需要进入到/home/.virtualenvs目录,在任何目录下都可以执行命令,创建的虚拟环境的位置都一样。

注意:创建虚拟环境是需要在联网下进行,否则创建失败。

注意:使用mkvirtualenv创建虚拟环境,可能提示找不到命令,一般是脚本文件没有加入系统路径,解决如下:

方法一:

# 找到virtualenvwrapper的脚本文件  whereis virtualenvwrapper

# 进入该目录  cd /usr/local/python3/bin

# 执行脚本文件激活 virtualenvwrapper    source virtualenvwrapper.sh

# 可以正常使用命令了

方法二:

# 方法一每次重启后都需要手动激活,不方便,将命令添加到环境变量   sudo vi ~/.bashrc

# 在末尾添加一行   source /usr/local/python3/bin/virtualenvwrapper.sh

# 保存后执行    source ~/.bashrc

# 现在可以正常使用命令了,且每次重启主机自动加载命令

虚拟环境的查看和使用

  • 删除虚拟环境 rmvirtualenv [虚拟环境名称]

例: rmvirtualenv mywork

注意:如果目前的位置在虚拟环境中,需要先退出虚拟环境,然后才能执行删除

注意:可以在任何目录执行删除操作,如果不知道名字,可以rmvirtualen + 两次Tab键,提示所有的虚拟环境

  • 退出虚拟环境   deactivate
  • 进入虚拟环境   workon [虚拟环境名称]

例: workkon mywork

注意:按workon+两次Tab键会提示所有虚拟环境。

  • 查看虚拟环境中安装的python包
pip list
pip freeze

两个命令都可以查询,只是展示的形式不一样。

  • 在虚拟环境下安装python包

进入虚拟环境,在终端输入:  pip install 包的名字

注意:一定不要使用sudo pip ... ,这里是在虚拟环境中安装python包;

如果使用了sudo权限,python包会被安装在主机非虚拟环境下,在虚拟环境中找不到这个包

搭建python的虚拟环境的更多相关文章

  1. Python开发虚拟环境使用virtualenvwrapper的搭建及pycharm链接步骤

    virtualenv 是一个创建隔绝的Python环境的工具.virtualenv创建一个包含所有必要的可执行文件的文件夹,用来使用Python工程所需的包.创建的环境是独立的,互不干扰,无需sudo ...

  2. Flask 学习篇一: 搭建Python虚拟环境,安装flask,并设计RESTful API。

    前些日子,老师给我看了这本书,于是便开始了Flask的学习 GitHub上的大神,于是我也在GitHub上建了一个Flask的项目. 有兴趣可以看看: https://github.com/Silen ...

  3. 【转】windows和linux中搭建python集成开发环境IDE

    本系列分为两篇: 1.[转]windows和linux中搭建python集成开发环境IDE 2.[转]linux和windows下安装python集成开发环境及其python包 3.windows和l ...

  4. Ubuntu+Django+Nginx+uWSGI+Mysql搭建Python Web服务器

    Ubuntu+Django+Nginx+uWSGI+Mysql搭建Python Web服务器 闲着无聊的时候部署了一个Django项目玩,用vm虚拟机部署的. 准备工作 我使用的系统是Ubuntu16 ...

  5. linux下搭建python机器学习环境

    前言 在 linux 下搭建 python 机器学习环境还是比较容易的,考虑到包依赖的问题,最好建立一个虚拟环境作为机器学习工作环境,在建立的虚拟环境中,再安装各种需要的包,主要有以下6个(这是看这个 ...

  6. 新的云主机 python 创建虚拟环境

    1.为什么要搭建虚拟环境? 问题:如果在一台电脑上, 想开发多个不同的项目, 需要用到同一个包的不同版本, 如果使用上面的命令, 在同一个目录下安装或者更新, 新版本会覆盖以前的版本, 其它的项目就无 ...

  7. 手把手教你如何在阿里云ECS搭建Python TensorFlow Jupyter

    前段时间在阿里云买了一台服务器,准备部署网站,近期想玩一些深度学习项目,正好拿来用.TensorFlow官网的安装仅提及Ubuntu,但我的ECS操作系统是 CentOS 7.6 64位,搭建Pyth ...

  8. centos下搭建python双版本环境

    目录 centos下搭建python双版本环境 一.安装python3 1.理清自带python位置 2.更新用于下载编译python3的相关包 3.安装pip 4.用pip安装wget 5.用wge ...

  9. ubuntu14.04下搭建python+mysql环境

    简略记录ubuntu14.04下搭建python操作的mysql服务器的过程和其中遇到的问题及解决方法. 第一部分: 安装mysql 安装步骤:1. sudo apt-get install mysq ...

随机推荐

  1. 细说tomcat之集群session共享方案

    1. Tomcat Cluster官网:http://tomcat.apache.org/tomcat-7.0-doc/cluster-howto.htmlTomcat原生支持的集群方案,通过组播消息 ...

  2. nginx静态资源反向代理

    server { listen 80; server_name music.didi365.com; index index.php index.html index.htm; root /alida ...

  3. Mybatis中#{}和${}传参的区别及#和$的区别小结

    最近在用mybatis,之前用过ibatis,总体来说差不多,不过还是遇到了不少问题,再次记录下, 比如说用#{},和 ${}传参的区别, 使用#传入参数是,sql语句解析是会加上"&quo ...

  4. kettle mysql 乱码

    在数据库连接上添加字符集编码参数characterEncoding, 指定UTF8或GBK

  5. Viterbi

    把语音分割为计算发音质量测度所需要的小单元时候,需要进行Viterbi对齐 Viterbi,在htk和sphinx中,也被称作token passing model Viterbi解码图是 状态数Sm ...

  6. Python常用模块之time模块

    python中的time和datetime模块是时间方面的模块 time模块中时间表现的格式主要有三种: 1.timestamp:时间戳,时间戳表示的是从1970年1月1日00:00:00开始按秒计算 ...

  7. java乱码解决方法

    String name = request.getParameter("name"); 乱码解决:String name = new String(request.getParam ...

  8. Css - 三大特性

    css - 三大特性 1.层叠性 如果通过两个相同选择器设置了同一个元素的某个相同的css属性,按照css相同属性的出现顺序,后面的样式会覆盖前面的样式 2.继承性 祖先元素的关于文本的样式会遗传给后 ...

  9. Aizu - 2200 Mr. Rito Post Office

    题意:/*你是某个岛国(ACM-ICPC Japan)上的一个苦逼程序员,你有一个当邮递员的好基友利腾桑遇到麻烦了:全岛有一些镇子通过水路和旱路相连,走水路必须要用船,在X处下船了船就停在X处.而且岛 ...

  10. MyBatis-Plus的简单使用

    mybatis-plus也只是听过,可是终究没有使用过.于是自己花几天晚上的时间研究mybatis-plus的使用. 下面的研究也是基于其官网:http://mp.baomidou.com/guide ...