1.虚拟环境产生的原因:如果在一台电脑上, 想开发多个不同的项目, 需要用到同一个包的不同版本, 如果使用上面的命令, 在同一个目录下安装或者更新, 新版本会覆盖以前的版本, 其它的项目就无法运行了.

2.虚拟环境的作用:

(1)虚拟环境可以搭建独立的python运行环境, 使得单个项目的运行环境与其它项目互不影响.

(2)所有的虚拟环境都位于/home/用户名(指的是你电脑上的用户名)【我的Ubuntu系统的用户名叫:python】/下的隐藏目录.virtualenvs

3.安装过程

(1)通过终端命令:

sudo apt install python-virtualenv

sudo apt install virtualenvwrapper

或者通过以下命令(针对于安装了pip的,这种方法没试过,因为我的出错了,使用的是上面的两句代码)

sudo pip install virtualenv

sudo pip install virtualenvwrapper

如果没有报错,基本上就是安装成功了。

注意:执行命令的顺序不能颠倒,原因是virtualenvwrapper是依赖于virtualenv的;这里的virtualenv是虚拟环境,而virtualenvwrapper是对virtualenv的命令进行了封装,更加好用。

(3)创建虚拟环境

在Ubuntu系统中,由于本身自带了python2和pythn3,那么创建就分为不同的。

如果创建python2的虚拟环境:

mkvirtualenv 虚拟环境名称

如:mkvirtualenv python2_test  此时是基于python2的虚拟环境,名称为:python2_test,这个虚拟环境就是保存在/home/用户名/.virtualenvs/下的目录中

如果创建python3的虚拟环境:

mkvirtualenv -p python3 虚拟环境

(4)如果在创建过程中提示找不到virtualenv命令,那么需要如下步骤:

步骤一:在家目录下创建一个.virtualenvs目录(虚拟环境都是放在这里的)

步骤二:打开~/.bashrc文件,在文件中添加下面两句话:(可以使用sudo gedit ~/.bashrc)

export WORKON_HOME=$HOME/.virtualenvs
source /usr/local/bin/virtualenvwrapper.sh

此时再去创建就可以成功了!注意:如果创建不成功可以试试下面的命令:mkvirtualenv -p python路径 虚拟环境名称python3创建虚拟环境:mkvirtualenv -p /usr/bin/python3 myfirst_python3

4.命令(1)虚拟环境使用命令:workon 虚拟环境名称(2)查看虚拟环境命令:workon 两次tab键(3)退出虚拟环境命令:deactivate(4)删除虚拟环境命令:rmvirtualenv 虚拟环境命令  使用命令是先退出,再删除(5)在虚拟环境中安装包:先进入虚拟环境中,然后使用pip install xxx,(6)查看虚拟环境中安装的包:pip freeze

更新:

错误原因:
Ubuntu安装了2.7和3.x两个版本的python,在安装时使用的是sudo pip3 install virtualenvwrapper
在我运行的时候默认使用的是python2.x,但在python2.x中不存在对应的模块。
(virtualenvwrapper.sh文件内容如下:):
if [ "$VIRTUALENVWRAPPER_PYTHON" = "" ] then
VIRTUALENVWRAPPER_PYTHON="$(command \which python)"
fi
解决方法:修改virtualenvwrapper.sh文件
1.which virtualenvwrapper.sh找到文件路径
2.在文件路径下sudo vim virtualenvwrapper.sh
3.修改:
if [ "$VIRTUALENVWRAPPER_PYTHON" = "" ] then
VIRTUALENVWRAPPER_PYTHON="$(command \which python3)"
fi
解决

转载于:https://www.cnblogs.com/fjiqiang/p/10639229.html

Ubuntu系统中创建虚拟环境相关推荐

  1. Linux系统中创建虚拟环境详解

    安装虚拟环境的命令: sudo pip install virtualenv sudo pip install virtualenvwrapper  安装完虚拟环境后,如果提示找不到mkvirtual ...

  2. 人工智能之配置环境教程二:在Anaconda中创建虚拟环境并在VsCode中使用

    人工智能之配置环境教程二:在Anaconda中创建虚拟环境安装pytorch并在VsCode中使用虚拟环境 作者介绍 一. 在Anaconda中创建虚拟环境 1. 进入本地终端 1.1 键盘使用**w ...

  3. python在什么系统中开发_Python虚拟开发环境,怎样才能在系统中创建

    本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 以下文章来源于python 青少年编程 ,作者python expert 今天小 ...

  4. Windows共享Linux打印机,在Ubuntu系统中使用局域网内Windows共享打印机的方法

    最近有一台HP打印机要使用,它连接一台Windows 7电脑,作为共享的打印机,然后我在Ubuntu系统中配置局域网内Windows共享打印机,阅读了很多教程才成功连接打印机,现在把方法分享出来.可以 ...

  5. PPA 完全指南,如何在 Ubuntu 系统中使用 PPA

    如果你在使用 Ubuntu 系统,或其它衍生版本,如 Linux Mint.Linux Lite 或者 Zorin OS 等,可能会遇到添加使用 PPA 的情况.那什么是 PPA?为什么要使用 PPA ...

  6. GPT问答:在Ubuntu系统中,利用QtCreator的QSqlQuery语句,连接到其他目录的mission_history.db数据库,并将其中的名为 mission 表单,以xls格式导出

    问题原文: 麻烦实现一下,在Ubuntu系统中,利用QtCreator的 QSqlQuery语句,连接到其他目录的mission_history.db 数据库,并将其中的名为 mission 表单,以 ...

  7. 在ubuntu系统中搭建笔记文档(typora+Picgo+Gitee)(全程记录)

    在ubuntu系统中搭建笔记文档(typora+Picgo+Gitee)(全程记录) 系统配置:ubuntu18.04 1.安装typora typora官网 Typora常用快捷键(翻译) 命令行中 ...

  8. 在ubuntu系统中使用dpkg命令安装后缀名为deb的软件包

    在ubuntu系统中使用dpkg命令安装后缀名为deb的软件包: dpkg命令常用格式如下: #查看文件结构(其中-c等价于--contents) sudo dpkg -c xx.deb #安装软件包 ...

  9. ubuntu 系统中如何截图

    ubuntu 系统中如何截图 浏览:805 | 更新:2014-02-25 13:17 ubuntu 系统现在用的人还不是很多,那么如何在 ubuntu 系统中截图呢?今天小编根据平时使用 ubunt ...

  10. [转]ubuntu系统中遇到的一些问题及解决

    ubuntu系统中遇到的一些问题及解决 1 如何结束不响应的程序 1)有些程序在不响应时,点击窗口上的关闭按钮就会弹出是否要强制退出的对话框,这时同意即可 2)如果还不行,可以在terminal中输入 ...

最新文章

  1. Java多线程读取本地照片为二进制流,并根据系统核数动态确定线程数
  2. 中国智能语音行业研究
  3. Delphi6 提示 Class TMSComm not found
  4. 404. Sum of Left Leaves 左叶子之和
  5. JAva面试题(微信分享)
  6. 深度可分离卷积Depthwise Separable Convolution
  7. python基础的学习
  8. In fact, at this stage, neither the 65W
  9. 还原python源码_python 的混淆后的代码可以还原么
  10. 32、剑指offer--把数组排成最小的数
  11. 表的主键用数字还是UUID
  12. java学生管理系统登录注册_《Java》— 学生管理系统——登录界面
  13. 畅捷通T+ RAP(Rapid Application Platform)快速应用开发平台
  14. 黑莓BlackBerry手机刷机ROM常见问题
  15. 4月24日云栖精选夜读:AI不可怕,就怕AI会画画——这里有一种你还不知道的‘图’灵测试…...
  16. 数据分析中的数据处理以及特征分析
  17. 28款静态网站快速搭建生成器
  18. 如何搭建一个自己的音乐服务器
  19. Revit API:View 视图概述
  20. 【算法千题案例】每日LeetCode打卡——93.宝石与石头

热门文章

  1. 分享Silverlight/WPF/Windows Phone一周学习导读(3月28日-4月2日)
  2. CISCO的NAT配置笔记
  3. Transact-SQL编程规范
  4. matlab指定的数据范围无效,c – 如何检查迭代器指定的范围是否有效?
  5. java程序结构化设计_项目二:基于Java的结构化程序设计
  6. Linux系统编程 -- 多线程之基于阻塞队列生产者与消费者模型
  7. 基于etcd实现大规模服务治理应用实战
  8. [渝粤教育] 西南科技大学 现代制造系统 在线考试复习资料2021版
  9. [渝粤教育] 西南科技大学 会计学原理 在线考试复习资料(2)
  10. hervorgehen ( aus ... )