ubuntu 虚拟环境安装,创建python3.5和python3.8虚拟环境

新的ubuntu20.0.4笔记本上自带点python是python3.8版本的,由于开发需要用到python3.5,一开始想把默认环境配置成python3.5算了。结果改了默认配置版本之后,坏了坏了,开机就报错,直接就进不了桌面界面了。所以,ubtuntu环境,要不是非常非常确定可以改版本,那就千万不要改系统自带的python默认版本,千万不要改系统默认的python默认版本。

所以,咱们还是配置几个虚拟环境玩吧~

  1. 在ubuntu终端上安装virtualenv。使用以下命令安装:

    sudo apt install python3-dev python3-venv python3-pip -y
    sudo apt install python3-virtualenv
    python35 -m pip install virtualenv

  2. 创建虚拟环境

    创建虚拟环境目录

    mkdir .virtualenv

    进入目录

    cd .virtualenv

    创建python3.5 版本的虚拟环境名字为:py35,你也可以改成任何自己想要的名字

    python3.5 -m venv ./py35

    创建python3.8 版本的虚拟环境名字为:py38,你也可以改成任何自己想要的名字

    python3.8 -m venv ./py38

3.激活虚拟环境

复制代码
source .virtualenv/py35/bin/active
#出现(py35) 开头的行,说明已经成功进入虚拟环境了
(py35) 

4.退出虚拟环境

复制代码
deactivate

结束!!! 到此就可以愉快的使用了~~~

下面说一下踩到的坑~

  1. 安装完虚拟环境后,我在网上看到别人是用以下方法创建新的virtualenv,但当我尝试使用

    virtualenv -p python3 venv

我得到以下错误:

复制代码
AttributeError: module 'virtualenv.create.via_global_ref.builtin.cpython.mac_os' has no attribute 'CPython2macOsArmFramework'

我尝试了很多方法,最终还是选择使用以下方法成功

复制代码
#./py35 是新创建的虚拟环境名字和目录,可以更换成自己的
python3.5 -m venv ./py35
  1. Virtaulenvwrapper是virtualenv的扩展包,用于更方便管理虚拟环境,但是当我安装完成启用的时候,报错了

    #安装
    sudo apt-get install python-virtualenv
    python35 -m pip install virtualenvwrapper -i https://pypi.douban.com/simple/

    #查看是否生成文件
    whereis virtualenvwrapper.sh
    virtualenvwrapper: /usr/local/bin/virtualenvwrapper.sh

    #启用
    source /usr/local/bin/virtualenvwrapper.sh

    #创建虚拟环境的时候报错
    mkvirtualenv -p /usr/local/bin/python3.5 env1
    #报错
    sudo: mkvirtualenv:找不到命令

    #这句也报错
    mkvirtualenv env
    AttributeError: module 'virtualenv.create.via_global_ref.builtin.cpython.mac_os' has no attribute 'CPython2macOsFramework'

这个错,暂时还没解决,等有空了再研究下,解决了再来更新

相关推荐
修己xj1 小时前
nslookup 使用指南:两种模式与常用查询技巧
linux
唠玖馆3 小时前
文件系统详解
linux·文件系统·ext2
GeW3 小时前
当Linux内核开始“确定性”,制造高端化才有了底层语法
linux
星恒随风5 小时前
MySQL 从零入门(三):表的约束详解
linux·服务器·数据库·笔记·mysql
Alluxio5 小时前
Alluxio + OCI:为 AI 工作负载实现亚毫秒访问延迟与可扩展吞吐
运维·数据库·人工智能·分布式·缓存·ai·语言模型
StarsGreen7 小时前
libva在intel平台上的前端流程简介
linux
坤坤子吖9 小时前
Linux网络编程:自定义应用层协议与 JSON 序列化
linux·服务器·网络·c++·笔记·json
Sayai9 小时前
Neo4j 图数据质量检查实战:环路检测、孤立节点与连通分量,两条 Cypher 引出的数据体检清单(含变长路径性能陷阱)
运维·neo4j·图数据库·数据质量·cypher
Elastic 中国社区官方博客10 小时前
更少的位数,相同的召回率:DiskBBQ 更保守的自动校准扫描
大数据·运维·开发语言·人工智能·elasticsearch·搜索引擎
方便面不加香菜10 小时前
Docker Volume -- 管理卷Volume详解
运维·docker·容器