00-macOS和Linux安装和管理多个Python版本

在 Mac 上安装多个 Python 版本可通过几种不同方法实现。

1 Homebrew

1.1 安装 Homebrew

若安装过,跳过该步。

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

1.2 安装 Python

如安装 Python 3.7:

brew install python@3.7

1.3 切换 Python 版本

Homebrew 会将安装的 Python 放在独立目录。你可以通过修改 PATH 环境变量或使用 brew linkbrew unlink 命令来切换不同版本的 Python。

由于已经无法下载到 3.6,放弃该方案:

2 使用 pyenv

用于在同一系统上安装和管理多个 Python 版本。

2.1 安装 pyenv

使用 Homebrew 安装 pyenv:

brew install pyenv

2.2 安装 Python 版本

使用 pyenv 安装特定版本 Python:

pyenv install 3.7.9

设置 Python 版本

使用 pyenv 设置全局或局部(项目级)Python 版本。例如,要全局设置 Python 3.7.9,使用:

pyenv global 3.7.9

3 使用 Anaconda

Anaconda 是一个针对科学计算的 Python 发行版,它允许你管理多个 Python 环境。

  1. 下载并安装 Anaconda: 从 Anaconda 官网 下载适用于 Mac 的安装器,并按照指示进行安装。

  2. 创建新的 Python 环境: 使用 Anaconda,你可以创建具有不同版本 Python 的独立环境。例如:

    conda create -n myenv python=3.7
  3. 激活和使用环境: 要使用特定环境,请激活它:

    conda activate myenv

注意事项

  • 在使用这些工具时,请确保你了解当前激活的 Python 环境,以避免版本混淆。
  • 这些方法可以共存,但通常最好选择一种并坚持使用,以保持环境的一致性和可管理性。
  • 了解如何正确配置 PATH 环境变量对于管理多个 Python 版本至关重要。

4 官网下载压缩包

适用于Unix & Linux 平台安装 Python:

以下为在 Unix & Linux 平台上安装 Python 的简单步骤:

  • 打开 WEB 浏览器访问https://www.python.org/downloads/source/
  • 选择适用 于Unix/Linux 的源码压缩包。
  • 下载及解压压缩包。
  • 如果你需要自定义一些选项修改Modules/Setup
  • 执行 ./configure 脚本
  • make
  • make install

执行以上操作后,Python 会安装在 /usr/local/bin 目录,直接设置到 IDE 即可:

Python 库安装在 /usr/local/lib/pythonXX,XX 为你使用的 Python 的版本号。

关注我,紧跟本系列专栏文章,咱们下篇再续!

作者简介:魔都技术专家,多家大厂后端一线研发经验,在分布式系统设计、数据平台架构和AI应用开发等领域都有丰富实践经验。

各大技术社区头部专家博主。具有丰富的引领团队经验,深厚业务架构和解决方案的积累。

负责:

  • 中央/分销预订系统性能优化

  • 活动&优惠券等营销中台建设

  • 交易平台及数据中台等架构和开发设计

  • 车联网核心平台-物联网连接平台、大数据平台架构设计及优化

  • LLM应用开发

    目前主攻降低软件复杂性设计、构建高可用系统方向。

参考:

  • 编程严选网

    本文由博客一文多发平台 OpenWrite 发布!

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

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

相关文章

统计每天某个时间范围内得 数据状态

来统计在特定条件下的记录数。具体来说,并且这些记录必须满足以下时间条件和存在条件: 时间条件:当前时间的小时和分钟部分在0600(早上6点)和0800(早上8点)之间。这是通过SUBSTRB和TO_CHAR函数实…

计算机毕业设计 | SSM 校园线上订餐系统 外卖购物网站(附源码)

1, 概述 1.1 项目背景 传统的外卖方式就是打电话预定,然而,在这种方式中,顾客往往通过餐厅散发的传单来获取餐厅的相关信息,通过电话来传达自己的订单信息,餐厅方面通过电话接受订单后,一般通…

Time-LLM :超越了现有时间序列预测模型的学习器

AI预测相关目录 AI预测流程,包括ETL、算法策略、算法模型、模型评估、可视化等相关内容 最好有基础的python算法预测经验 EEMD策略及踩坑VMD-CNN-LSTM时序预测对双向LSTM等模型添加自注意力机制K折叠交叉验证optuna超参数优化框架多任务学习-模型融合策略Transform…

纷享销客集成平台(IPaaS)解决方案

针对传统对接方式中的痛点,集成平台提炼了一套成熟的解决方案和配套工具。 痛点1:编码工作量大。 每个功能点,和众多的容错分支,都需要逐行编码实现。日志打少了影响问题排查,打多了浪费大量存储。 集成…

Django里的ModelForm组件

ModelForm组件 自动生成HTML标签 自动读取关联数据表单验证 错误提示数据库进行:新建,修改 步骤如下: 创建类 # 在 views.py 文件里# 创建一个类 class AssetModelForm(forms.ModelForm):class Meta:model models.AssetSet #fields [n…

k8s 对外服务之 Ingress(HTTPS/HTTP 代理访问 以及Nginx 进行 BasicAuth )

目录 一 Ingress HTTP 代理访问虚拟主机 (一)原理 (二)实验 1,准备 2,创建虚拟主机1资源 3,创建虚拟主机2资源 4,创建ingress资源 5,查看相关参数 6&#xff0…

Python变量符号:深入探索与实用指南

Python变量符号:深入探索与实用指南 在Python编程的世界中,变量符号扮演着至关重要的角色。它们不仅是存储数据的容器,更是构建复杂逻辑和算法的基础。然而,对于初学者来说,Python的变量符号可能会带来一些困惑和挑战…

【文末附gpt升级秘笈】埃隆·马斯克芯片调配策略对特斯拉股价的影响分析

埃隆马斯克芯片调配策略对特斯拉股价的影响分析 一、引言 在现代商业环境中,企业间的资源调配与策略布局往往对其股价产生深远影响。据外媒CNBC报道,埃隆马斯克在芯片资源分配上的决策引起了业界的广泛关注。他秘密要求英伟达将原本预留给特斯拉的高端…

如何为律师制作专业的商务名片?含电子名片二维码

律师关注细节,律师名片也不例外。它们不仅仅是身份的象征,更是律师专业形象的代表,传递专业知识和信任。今天就来和我们一起来看看制作律师商务名片的注意事项,以及如何制作商务名片上的电子名片二维码? 一、名片的主…

【Text2SQL】评估 LLM 的 Text2SQL 能力

论文:Evaluating the Text-to-SQL Capabilities of Large Language Models ⭐⭐⭐⭐ arXiv:2204.00498 一、论文速读 本论文尝试了多种 prompt 结构,并且评估了他们在 Codex 和 GPT-3 上的表现。下面介绍这些 prompt 结构: 二、不同的 prom…

Hive 面试题(二)

1. 简述Hive如何实现分区 ? Hive中的分区是一种数据组织方式,它允许用户将表中的数据分割成不同的部分,每个部分称为一个分区。分区的主要目的是提高查询性能和数据管理的效率。以下是Hive实现分区的步骤和概念: 1. 创建分区表 …

优思学院|谈汽车零部件企业生产精益及现场管理

精益生产(Lean Production)和现场管理作为现代制造企业的核心管理理念,正在越来越多的企业中得到应用。尤其是在中国,许多汽车零部件企业通过精益管理和六西格玛方法,显著提高了生产效率,降低了生产成本&am…

过渡属性 height 设置 auto 不起作用

transition 在过渡时 无法将 auto 转换为 px&#xff0c;所以设置必须是具体数值&#xff0c;否则没有过渡效果 解决办法 操作 dom 对具体的数值进行转换 <div class"card-detail" v-for"(item, index) in 2" :key"index"><div class…

15.FreeRTOS 消息缓存 Message Buffer

FreeRTOS 消息缓存&#xff08;Message Buffer&#xff09;的使用 介绍 在实时操作系统&#xff08;RTOS&#xff09;中&#xff0c;任务之间的通信是一个非常重要的方面。FreeRTOS 提供了多种机制来实现任务间通信&#xff0c;其中之一就是消息缓存&#xff08;Message Buffe…

大数据之CDH对Hdfs做Balance数据均衡/数据平衡/数据倾斜

问题的来源: 由于在hive工具运行sql,出现sql卡顿的情况,去cdh上查看yarn资源的分布情况,发现了整个cdh平台中hdfs和yarn资源分布不均匀,大量的爆红显示: 以下 DataNode 数据目录 位于小于其可用空间 10.0 吉字节 的文件系统中。 /data1/dfs/dn&#xff08;可用&#xff1a;7.2 …

C++的类和new和delete和菱形继承机制

文章目录 参考虚函数使用虚函数的class结构相关实现源码IDA反编译子类虚表和父类虚表调用函数菱形继承 参考 https://showlinkroom.me/2017/08/21/C-%E9%80%86%E5%90%91%E5%88%86%E6%9E%90/ https://www.cnblogs.com/bonelee/p/17299985.html https://xz.aliyun.com/t/5242?t…

hadoop疑难问题解决_NoClassDefFoundError: org/apache/hadoop/fs/adl/AdlFileSystem

1、问题描述 impala执行查询&#xff1a;select * from stmta_raw limit 10; 报错信息如下&#xff1a; Query: select * from sfmta_raw limit 10 Query submitted at: 2018-04-11 14:46:29 (Coordinator: http://mrj001:25000) ERROR: AnalysisException: Failed to load …

Go GORM中的迁移系统,实现自动迁移与手动迁移

在Golang生态系统中&#xff0c;GORM作为一个广泛使用的ORM框架&#xff0c;不仅在数据库操作方面提供了友好的API支持&#xff0c;其迁移系统&#xff08;Migration System&#xff09;同样功能强大且易于使用。在本文中&#xff0c;我们将详细解析GORM中的迁移机制&#xff0…

Linux进程无法被kill

说明&#xff1a;记录一次应用进程无法被kill的错误&#xff1b; 场景 在一次导出MySQL数据时&#xff0c;使用下面的命令&#xff0c;将数据库数据导出为.sql文件&#xff0c;数据量大&#xff0c;导出时间长&#xff0c;于是我就将服务器重启了。 mysqldump -u username -…

springboot大学生就业管理系统-计算机毕业设计源码89344

摘 要 信息化社会内需要与之针对性的信息获取途径&#xff0c;但是途径的扩展基本上为人们所努力的方向&#xff0c;由于站在的角度存在偏差&#xff0c;人们经常能够获得不同类型信息&#xff0c;这也是技术最为难以攻克的课题。针对大学生就业管理系统等问题&#xff0c;对大…