Linux下多python版本共存

news2024/12/26 11:13:16

python下载官网

https://www.python.org/downloads/
python支持多版本共存,是大版本共存,小版本不共存。

  • python3.6 和 3.7 共存
  • python3.6.6和python3.6.8 不共存

1.下载特定版本的python

  • 进入官网后点击Downloads–>All releases
  • 点击‘Gzipped source tarball’下载源码压缩包进行安装
    (Gzipped为linux下安装包;XZ为macOS下安装包)

2.安装依赖

apt install gcc # 只有gcc
或者
sudo apt install build-essential # 不止有gcc,还有g++、make等

3.安装python

3.1解压缩

tar -zxvf Python-3.6.6.tgz

3.2 安装

mkdir /usr/local/Python36
cd Python-3.6.6/
./configure --prefix=/usr/local/python36   //配置
make && make install   //编译并且安装

4.添加环境变量

cd /etc/profile.d/
vim python36.sh
在python36.sh中写入export PATH="$PATH:/usr/local/python36/bin"
source ../profile
echo $PATH
验证:
python3.6 --version
pip3.6 --version

5.多个python最好用python3.x来管理

5.1 将python.exe的执行文件改为python3x.exe

在这里插入图片描述

5.2将/usr/local/python3x/bin添加到环境变量

见第四步
自定义安装到不同目录,在/usr/bin下建立不同的软连接。如:python3.6、python3.10。同时建立相同的pip软连接pip3.6和pip3.10。终端输入python3.6进入python3.6环境,输入python3.10进入python3.10环境。进入环境后,使用对应pip,如pip3.6、pip3.10安装依赖包。

5.3使用python3x命令区分各个版本(pip同理)

6.建立软连接

# 查看软连接
cd /usr/bin
ll python3  # 在 /usr/bin 目录执行
# 如果存在软连接,则先删除
unlink python3(软连接名称)
unlink pip3
# 建立软连接
#python3 为软连接名称,可以自定义,如python36
ln -s /usr/local/python36 /usr/bin/python3   
ln -s /usr/local/pip36 /usr/bin/pip3
# 测试
python3  # 软连接名称

注意:
在这里,ln -s 命令用于创建一个软链接,或者叫符号链接。这个命令的结构是 ln -s 目标文件 链接名称。所以,ln -s /usr/local/python38 /usr/bin/python3 这个命令是在 /usr/bin/ 目录下创建一个叫做 python3 的链接,这个链接指向 /usr/local/python38。

如果 /usr/bin/python3 或 /usr/bin/pip3 已经存在,你直接运行上述命令可能会看到一个错误,因为你不能在一个已经存在的文件或目录上创建链接。你可以先删除已经存在的链接或文件(例如,使用 rm 命令:rm /usr/bin/python3),然后再创建新的链接。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/836557.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

在职读研想要成功上岸,社科院杜兰大学金融管理硕士机不可失

近年来,中国考研报名人数节节攀升,2023年考研报名人数达到了474万。在如此庞大的考生群体中,成功被录取的人数却不足两成,这一数字引起了社会各界广泛的热议和关注。招生规模如此浩大,录取率却如此之低。其实考研录取率…

【2023年电赛国一必备】C题报告模板--可直接使用

任务 图1 任务内容 要求 图2 基本要求内容 图3 发挥部分内容 说明 图4 说明内容 评分标准 图5 评分内容 正文 (部分) 摘要 本实验基于TI公司的TM4C123GH6PM主控,结合OPA2337芯片和其他硬件模块,设计并制作了一种单相逆变器…

如何快速完成 App 安全评估报告【最快当天完事】

文章目录 1. App下架展示2. 检查App是否存在问题3. 注册《安全评估》 信息4. 人工快速干预,加快审核步骤5. 面审阶段6. 后续 1. App下架展示 在华为应用市场上架的App突然间被下架,把我搞得猝不及防,原因如下: 是因为我们缺少 《…

提升项目管理效率的优秀软件推荐

Zoho Projects项目管理软件拥有随需而配的强大项目功能,帮助项目经理实现整体项目把控。系统以“动态管理、实时共享”的先进理论实现项目进度、成本、资源、绩效、风险等的有效跟进,解决项目管理中因信息滞后导致的项目失败问题,提升企业项目…

2.虚拟机开启kali_linux

首先你应该搞一个虚拟机,搞虚拟机可以看一下这个 附录三 虚拟机的使用_Suyuoa的博客-CSDN博客 然后你需要搞一个 kali linux的镜像 Get Kali | Kali Linux 镜像下载好之后解压,你会得到一个文件夹包含下面这些文件 之后打开VMware,点击打开虚…

Java SpringBoot集成Activiti7工作流

Activiti7 Java SpringBoot集成Activiti7工作流介绍项目集成引入依赖YML配置文件配置类 启动项目生成表结构Activiti的数据库支持 Activiti数据表介绍项目Demo地址: Java SpringBoot集成Activiti7工作流 本文项目Demo地址附在文章后方 官网主页:http://a…

Java 离线导包

Java 离线导包 1、问题2、解决方法 1、问题 import org.apache.commons.lang3.StringUtils; 报红色 2、解决方法 下载离线包或者在meven的repository中找到下载好的包,如commons-lang3-3.12.0.jar File->Project Structure->Libraries-> Java 选择离线…

OpenCV图像处理技巧之空间滤波

1. 引言 再次问好,图像处理爱好者们!🌟 在前面的章节中,我们学习了图像处理的基础知识,并展现了图像增强的魅力。在这一节中,我们将更深入地研究空间滤波技术。 闲话少说,我们直接开始吧&#…

C++20 协程(coroutine)入门

文章目录 C20 协程(coroutine)入门什么是协程无栈协程和有栈协程有栈协程的例子例 1例 2 对称协程与非对称协程无栈协程的模型无栈协程的调度器朴素的单线程调度器让协程学会等待Python 中的异步函数可等待对象M:N 调度器——C# 中的异步函数 小结 C20 中…

LabVIEW深度相机与三维定位实战(下)

‍‍🏡博客主页: virobotics的CSDN博客:LabVIEW深度学习、人工智能博主 🎄所属专栏:『LabVIEW深度学习实战』 🍻上期文章:『LabVIEW深度相机与三维定位实战(上)』 &#…

《Python入门到精通》循环语句 while循环,for循环

「作者主页」:士别三日wyx 「作者简介」:CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者 「推荐专栏」:小白零基础《Python入门到精通》 循环语句 1、语法格式1.1、while1.2、死循环1.3、简写形式 2、continue 跳过循环…

synchronized总结

目录 一、synchronized的特性 1.1 原子性 1.2 可见性 1.3 有序性 1.4 可重入性 二、synchronized的使用 2.1 修饰普通方法 2.2 修饰静态方法 2.3 修饰代码块 三、synchronized的锁机制 3.1 偏向锁 3.2 轻量级锁 3.3 重量级锁 一、synchronized的特性 1.1 原子性 原子性是指一…

【逗老师的PMP学习笔记】3、项目经理的角色和能力

个人感觉这一篇属于打鸡血篇,与实战关联较弱。主要各位要思考一下,做好一个项目经理,在哪些overall的领域和能力上要让自己牛逼 一、开篇一张图 总结一句话,项目经理更像是一直大型交响乐团的**指挥** (除了正向的&a…

Streamlit应用中构建多页面(三):两种方案

文章目录 1 前言2 第一种方案:使用Session State实现多页面交互2.1 Session State简介2.2 多页面应用的基本结构2.3 实现多页面交互的代码示例2.4 Session State机制的优缺点 3 第二种方案:Streamlit内置多页面方案(更为推荐)3.1 …

DoIP学习笔记系列:(三)用CAPL脚本过“安全认证”,$27服务实现

文章目录 1. 如何调用接口通过安全认证?如何新建CAPL工程,在此不再赘述,本章主要分享一下如何在CAPL中调用DoIP接口、diag接口进行DoIP和诊断的测试。 注意:CANoe工具本身的使用没什么难的,所谓会者不难难者不会,各位小伙伴有疑问要多问,多交流,往往难事都只是一层窗户…

生鲜蔬果小程序的完整教程

随着互联网的发展,线上商城成为了人们购物的重要渠道。其中,小程序商城在近年来的发展中,备受关注和青睐。本文将介绍如何使用乔拓云网后台搭建生鲜果蔬配送小程序,并快速上线。 首先,登录乔拓云网后台,进入…

(具体解决方案)训练GAN深度学习的时候出现生成器loss一直上升但判别器loss趋于0

今天小陶在训练CGAN的时候出现了绷不住的情况,那就是G_loss(生成器的loss值)一路狂飙,一直上升到了6才逐渐平稳。而D_loss(判别器的loss值)却越来越小,具体的情况就看下面的图片吧。其实这在GAN…

【设计模式】——工厂模式

什么是工厂模式? Java的工厂模式是一种创建型设计模式,它提供了一种创建对象的最佳方式。在工厂模式中,我们在创建对象时不会对客户端暴露创建逻辑,而是通过使用一个共同的接口来指向新创建的对象。这种类型的设计模式属于创建型…

替换开源LDAP,西井科技用宁盾目录统一身份,为业务敏捷提供支撑

客户介绍 上海西井科技股份有限公司成立于2015年,是一家深耕于大物流领域的人工智能公司,旗下无人驾驶卡车品牌Q-Truck开创了全球全时无人驾驶新能源商用车的先河,迄今为止已为全球16个国家和地区,120余家客户打造智能化升级体验…

houdini vex中的属性类型(attribute)

https://www.sidefx.com/docs/houdini/vex/snippets.html#parameters