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'

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

相关推荐
CAFEBABE 3412 分钟前
linux离线安装docker并启动
linux·docker·eureka
wanhengidc1 小时前
云手机的存储空间可以灵活扩展吗?
运维·服务器·科技·智能手机·云计算
Danileaf_Guo1 小时前
256台H100服务器的RoCEv2无损与全互联算力网络建设方案
运维·服务器·网络
解压专家6662 小时前
怎么找书?怎么传输?在Kred里完成的全过程
运维·服务器·网络
OnlyEasyCode2 小时前
快速上手!查看、拷贝、编辑、远程连接Linux命令
linux·运维·服务器
dualven_in_csdn2 小时前
UDP广播接收小优化
linux·运维·服务器
Xの哲學3 小时前
Linux二层转发: 从数据包到网络之桥的深度解剖
linux·服务器·算法·架构·边缘计算
石像鬼₧魂石3 小时前
Termux ↔ Windows 靶机 反向连接实操命令清单
linux·windows·学习
yuguo.im3 小时前
Docker 两大基石:Namespace 和 Cgroups
运维·docker·容器
亮子AI3 小时前
application/json 服务器收到的是字符串,还是json对象?
运维·服务器·json