1. <strong id="7actg"></strong>
    2. <table id="7actg"></table>

    3. <address id="7actg"></address>
      <address id="7actg"></address>
      1. <object id="7actg"><tt id="7actg"></tt></object>

        Python版本管理工具pyenv

        共 3641字,需瀏覽 8分鐘

         ·

        2023-11-06 23:19

        這里介紹通過(guò)pyenv進(jìn)行Python版本的管理
        abstract.png

        安裝

        Mac下直接使用Homebrew安裝

        # 更新 Homebrew 的軟件列表
        brew update
        # 安裝pyenv
        brew install pyenv

        # 驗(yàn)證是否安裝成功
        pyenv -v

        然后執(zhí)行下述命令,其會(huì)自動(dòng)檢測(cè)你所使用的shell環(huán)境,并提示如何配置shell環(huán)境

        pyenv init 

        這里我們使用的Shell是zsh,故將相關(guān)配置添加到用戶目錄下的.zshrc文件即可

        # Zsh Shell配置
        export PYENV_ROOT="$HOME/.pyenv"
        command -v pyenv >/dev/null || export PATH="$PYENV_ROOT/bin:$PATH"
        eval "$(pyenv init -)"
        figure 1.jpg

        常用命令

        查看可安裝的Python版本

        pyenv install --list

        pyenv install -l

        安裝指定版本Python

        pyenv install <version>

        # 安裝3.11.1版本的Python
        pyenv install 3.11.1

        查看已安裝版本Python、當(dāng)前活動(dòng)的Python版本

        同時(shí)會(huì)在當(dāng)前被激活的版本前添加星號(hào)。如果未激活任何版本Python,則默認(rèn)在system行顯示星號(hào)

        # 查看已安裝的Python版本
        pyenv versions

        # 顯示當(dāng)前活動(dòng)的Python版本
        pyenv version

        卸載指定版本Python

        pyenv uninstall <version>

        # 卸載3.11.1版本的Python
        pyenv uninstall 3.11.1

        切換Python版本

        1. 設(shè)置全局的Python版本

        # 設(shè)置 全局的Python版本
        pyenv global <version>

        # 查看 全局的Python版本設(shè)置
        pyenv global
        figure 2.jpg

        3. 設(shè)置當(dāng)前目錄下的Python版本

        后續(xù)進(jìn)入該目錄后,會(huì)自動(dòng)切換到此前設(shè)置的Python版本。具體地,其會(huì)在該目錄下生成一個(gè).python-version文件,用于記錄設(shè)置的Python版本信息。顯然,該設(shè)置的優(yōu)先級(jí)高于全局的Python版本

        # 設(shè)置 當(dāng)前目錄下的Python版本
        pyenv local <version>

        # 顯示 當(dāng)前目錄下的Python版本設(shè)置
        pyenv local

        # 取消 當(dāng)前目錄下的Python版本設(shè)置
        pyenv local --unset

        3. 設(shè)置當(dāng)前Shell會(huì)話的Python版本

        該設(shè)置的優(yōu)先級(jí)高于 基于目錄設(shè)置的Python版本 和 全局的Python版本

        # 設(shè)置 當(dāng)前Shell會(huì)話的Python版本
        pyenv shell <version>

        # 查看 當(dāng)前Shell會(huì)話的Python版本設(shè)置
        pyenv shell

        # 取消 當(dāng)前Shell會(huì)話的Python版本設(shè)置
        pyenv shell --unset

        總結(jié)下,三種不同Python版本設(shè)置的優(yōu)先級(jí)依次遞減

        shell > local > global
        figure 3.jpg

        鏡像加速

        pyenv安裝python是從python官網(wǎng)下載的,速度非常慢。雖然不能直接更改pyenv下載的鏡像源。但我們可以將從其他地方下載的安裝包放置在 ~/.pyenv/cache/ 目錄下,這樣pyenv就會(huì)利用本地文件進(jìn)行安裝。這里我們利用Shell定義一個(gè)pyinstall函數(shù),腳本文件pyenvFunc.sh內(nèi)容如下

        #!/usr/local/bin/zsh

        # 從國(guó)內(nèi)鏡像源下載Python壓縮包,并使用pyenv進(jìn)行安裝
        function pyinstall() {
            py_version=$1
            echo "準(zhǔn)備安裝 Python ${py_version}"
            
            # 確保cache目錄存在
            pyenv_cache_dir=~/.pyenv/cache/
            mkdir -p ${pyenv_cache_dir}

            # Python壓縮包的文件名
            pyenv_cache_file=Python-${py_version}.tar.xz
            # Python壓縮包的完整存放路徑
            pyenv_cache_file_path=${pyenv_cache_dir}${pyenv_cache_file}
            # 從指定地址下載Python壓縮包
            curl -L https://npm.taobao.org/mirrors/python/${py_version}/Python-${py_version}.tar.xz -o ${pyenv_cache_file_path}
            # 安裝Python
            pyenv install ${py_version}

            echo "Python ${py_version} 安裝成功啦~~~"

            # 刪除Python壓縮包
            cd ${pyenv_cache_dir}
            rm ${pyenv_cache_file}
        }

        由于我們使用的Shell是zsh,故在用戶目錄下的.zshrc文件中引用pyenvFunc.sh腳本即可

        ...

        # 引用pyinstall函數(shù):從國(guó)內(nèi)鏡像源下載Python壓縮包,并使用pyenv進(jìn)行安裝
        source ~/CustomShellScript/pyenvFunc.sh

        ...
        figure 4.jpg

        至此就可以使用pyinstall命令來(lái)安裝不同版本的python了

        figure 5.jpg

        瀏覽 128
        點(diǎn)贊
        評(píng)論
        收藏
        分享

        手機(jī)掃一掃分享

        分享
        舉報(bào)
        評(píng)論
        圖片
        表情
        推薦
        點(diǎn)贊
        評(píng)論
        收藏
        分享

        手機(jī)掃一掃分享

        分享
        舉報(bào)
        1. <strong id="7actg"></strong>
        2. <table id="7actg"></table>

        3. <address id="7actg"></address>
          <address id="7actg"></address>
          1. <object id="7actg"><tt id="7actg"></tt></object>
            极品美妇后花庭翘臀娇吟视频 | 男人添女人下部视频 | 浴室里强摁做开腿呻吟的 | 大骚逼人人操 | 亚洲无码自拍偷拍 | 人妻熟女88AⅤ | 韩国女主播bj大尺度网站 | 成人性爱豆花视频试看 | 男女羞羞羞视频午夜视频 | 中文字幕乱码亚洲无线码小说 |