mac 安裝python,切換python版本

一、安裝多版本的PYTHON

在macOS上,你可以通過Homebrew包管理器安裝多個版本的Python

安裝Homebrew

首先,如果你的macOS上沒有安裝Homebrew,需要先進行安裝。打開終端(Terminal)并輸入以下命令:

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

安裝Python

然后,使用Homebrew來安裝不同版本的Python。例如,安裝Python 3.8:

brew install python@3.8

重復上述步驟,可以安裝其他所需版本的Python

二、配置環境變量

配置環境變量是切換默認Python版本的關鍵一步。
修改 .zshrc.bash_profile

根據你使用的shell(在macOS Catalina或更高版本中,默認是zsh),你需要編輯你的.zshrc.bash_profile文件。

open -e ~/.zshrc  # 或使用 open -e ~/.bash_profile

設置PATH環境變量

which python3 # 查看位置 /usr/local/bin/python3
vim ~/.bash_profile

添加這個代碼到文件中

PATH="/usr/local/bin:${PATH}"
export PATH
alias python="/usr/local/bin/python3"

讓環境變量生效

source ~/.zshrc  # 或 source ~/.bash_profile

關閉終端,重新打開就行

驗證Python版本

python --version

三、使用VERSION管理器

盡管手動切換環境變量可以更改默認的Python版本,但使用版本管理器更為方便,特別是在需要頻繁切換版本的情況下。

安裝pyenv
pyenv是一個流行的Python版本管理器。要安裝它,可以使用以下命令:

brew update
brew install pyenv

初始化pyenv
安裝完成后,在.zshrc或.bash_profile中初始化pyenv。

echo -e 'if command -v pyenv 1>/dev/null 2>&1; then\n  eval "$(pyenv init -)"\nfi' >> ~/.zshrc

對于bash用戶

echo -e 'if command -v pyenv 1>/dev/null 2>&1; then\n  eval "$(pyenv init -)"\nfi' >> ~/.bash_profile
source ~/.zshrc  # 或 source ~/.bash_profile

使用pyenv安裝并切換Python版本
使用下面的命令來安裝新版本的Python:

pyenv install 3.8.0

切換全局Python版本:

pyenv global 3.8.0

驗證版本切換
最后,驗證當前的Python版本:

python --version

如果顯示的是你通過pyenv設置的版本,則表明成功切換。

四、更新和維護

切換Python的版本后,可能需要重新安裝依賴或者進行其他的維護操作。

安裝pip依賴
在新的Python版本,你可能需要重新安裝pip依賴:

pip install -r requirements.txt

更新pyenv和Python版本
隨著時間的推移,pyenv和Python都可能發布新版本。為了保持最新,定期運行以下命令更新:

brew update
brew upgrade pyenv
pyenv install --list  # 查看可用的Python版本

通過這些步驟,你可以根據項目需求或個人偏好,輕松地在macOS上切換默認的Python版本。只要確保遵循合適的方法并小心操作,多版本共存不會對系統造成影響。參考鏈接
希望對你有用!

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/86878.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/86878.shtml
英文地址,請注明出處:http://en.pswp.cn/web/86878.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

AMD圖形和計算架構:RNDA

AMD圖形和計算架構:RNDA AMD RDNA 是 AMD 為顯卡(GPU)設計的 圖形和計算架構,專為高性能游戲、實時渲染和并行計算優化。目前已經迭代到 RDNA 3(如 RX 7000 系列顯卡),與 NVIDIA 的 RTX 系列和…

ubuntu20.04配置go環境

下載go語言安裝包 下載地址: All releases - The Go Programming Language 解壓安裝包 tar xfz go1.17.linux-amd64.tar.gz -C /usr/local 配置環境變量 編輯配置文件 vim ~/.bashrc # go env export GOROOT/usr/local/go export GOPATH$HOME/software/go ex…

Monorepo+Pnpm+Turborepo

以下是關于 Monorepo pnpm Workspace Turborepo 的詳細解析,涵蓋核心概念、技術優勢、配置實踐及協作機制,結合行業最佳實踐總結。 一、Monorepo 的核心價值 Monorepo(單一倉庫)指多個項目/模塊共享同一代碼庫的管理模式&#…

【Springai】 2指定模型的三種方式(Ollama)

Springai 指定模型的三種方式(Ollama) 在實際開發中,Ollama 支持三種常用的模型指定方式: 1. 從 yml 配置讀取默認模型 注意: 這是最基礎、最推薦的方式,必須先配置好才能用自動注入的 OllamaChatModel。…

python | numpy小記(四):理解 NumPy 中的 `np.round`:銀行家舍入策略

python | numpy小記(四):理解 NumPy 中的 np.round:銀行家舍入策略 一、函數簽名與參數說明二、“銀行家舍入”策略三、基礎示例四、與 Python 內建 round 的異同五、使用注意事項六、擴展用法:自定義舍入策略七、總結…

shell腳本定時執行收集Oracle大表的日分區及創建分區本地索引

近期業務上了一張大表,每日新增分區,每日分區數據量為3千萬行。根據每日分區創建分區本地索引。同事添加定時收集前一日每日分區統計信息。 1、創建分區本地索引 (分區索引數量需要和分區name數量一致) create index nmld.add_event_occur_time on nmld.esa_event (occur…

使用 Spread.net將 Excel 中的文本拆分為多段

引言: 在 .NET 應用程序中處理 Excel 數據時,常常會碰到需要把文本拆分成多段的情況。例如在數據清洗、數據分析等場景下,將長文本按照特定規則拆分為多段能讓數據更便于處理和分析。Spread.NET作為一款強大的 .NET 電子表格組件&#xff0c…

QT實現一個三軸位移臺的控制界面

文章目錄 0 引入1、圓形轉盤2、其他3、引用 0 引入 本來想做一個酷炫的3D位移臺控制程序,要有一個類似遙控器手柄那種界面,在網上找了半天也沒有,想要有那種效果還要用異性按鈕做,迫在眉睫的情況下,使用了自己的方法&…

Java 案例 6 - 數組篇(基礎)

數組的平均值、最大(小)值。數組的反轉 需求:開發一個程序。假設班級有8名學生,用戶可以錄入8名學生的Java成績,成績類型是小數,并輸出平均分,最高分和最低分。 import java.util.Scanner; …

Java外觀模式實現方式與測試方法

一、外觀模式的實現方式 外觀模式的核心是通過封裝復雜子系統的調用邏輯,為客戶端提供一個統一的簡單接口。以下是實現步驟及示例: 定義子系統類 子系統類負責實現具體功能,與外觀類解耦。例如,家庭影院系統中的投影儀、音響等組…

《解鎖AudioSet:開啟音頻分析的無限可能》

音頻新時代的 “密鑰”:AudioSet 登場 在科技飛速發展的今天,音頻作為信息傳播與交互的關鍵媒介,早已滲透到現代科技的各個角落。從智能手機中的語音助手,讓我們通過簡單的語音指令就能查詢信息、發送消息,到智能家居系…

50天50個小項目 (Vue3 + Tailwindcss V4) ? | ThemeClock(主題時鐘)

&#x1f4c5; 我們繼續 50 個小項目挑戰&#xff01;—— ThemeClock組件 倉庫地址&#xff1a;https://github.com/SunACong/50-vue-projects 項目預覽地址&#xff1a;https://50-vue-projects.vercel.app/ 使用 Vue 3 的 Composition API 和 <script setup> 語法結…

直播預告丨聊聊Milvus 2.6新功能及背后的開發故事

7 月 1 日晚上 20:00-21:00&#xff0c;Zilliz 視頻號直播間&#xff0c;Zilliz 合伙人和研發VP 欒小凡將帶來《一步到位&#xff0c;詳解 Milvus 2.6 新功能》的分享&#xff0c;帶你拆解 Milvus 2.6 四大突破&#xff1a; 降本增效的底層架構開發者生產力拉滿的新功能性能不打…

pyenv-win 配置指南?

在 Python 開發過程中&#xff0c;經常會遇到需要使用不同版本 Python 的情況。比如&#xff0c;舊項目依賴某個特定的 Python 版本&#xff0c;而新項目則要求使用更新的版本。這時&#xff0c;版本管理工具就顯得尤為重要。pyenv-win就是一款專門為 Windows 系統設計的 Pytho…

MongoDB 常見查詢語法與命令詳解

MongoDB 作為文檔型數據庫&#xff0c;其查詢語言基于 BSON&#xff08;二進制 JSON&#xff09;格式&#xff0c;與傳統關系型數據庫的 SQL 語法有較大差異。 一、基本查詢命令 1. find()&#xff1a;查詢文檔 語法&#xff1a;db.collection.find(查詢條件, 投影)示例&…

AlpineLinux安裝docker

或許你在docker中使用 Alpine Linux 的鏡像使用得多,但是有沒有想過在 Alpine Linux 上安裝 Docker 來使用呢?默認情況下,Docker 包位于社區倉庫中,因此在使用包管理來安裝docker之前建議更換為國內源,并開啟社區倉庫的鏈接。 下面的操作是在root用戶下運行的,如果要使用…

docker安裝gitlab并配置ssl證書

本篇安裝環境 Docker版本&#xff1a;Docker version 28.3.0 域名&#xff1a;test.disallow.cn 自簽證書&#xff1a;/etc/gitlab/ssl&#xff08;已經存放在該目錄&#xff09; 一、拉取鏡像 docker run -itd \--privilegedtrue \--hostname gitlab.test.disallow.cn \--p…

Java開發者轉型AI時代的路徑

Java開發者轉型AI時代的路徑 引言 隨著人工智能技術的飛速發展&#xff0c;AI已不再是遙不可及的未來&#xff0c;而是深刻影響著各行各業的當下。對于Java開發者而言&#xff0c;面對AI浪潮&#xff0c;如何順勢而為&#xff0c;實現職業轉型與技能升級&#xff0c;成為擺在…

QT6 源(140)模型視圖架構里的視圖總基類 QAbstractItemView:

&#xff08;1&#xff09;先給出本類的繼承關系 &#xff1a; &#xff08;2&#xff09;Qt 已經預先為視圖定義了鍵盤功能&#xff0c;Qt 大師們通過編程&#xff0c;已經完善了視圖對鍵盤的響應操作 &#xff1a; &#xff08;3&#xff09;因為本類是抽象基類&#xff0c;無…

vue上傳各種文件,并預覽組件,(預覽,下載),下載resources目錄下文件

前端組件vue 最終效果 <template><div ><div class"file-list" v-if"existingFiles.length > 0"><div class"file-card" v-for"(file, index) in existingFiles" :key"file.id"><div clas…