pyenvをインストールする(2025.04.09投稿記事の転載)
衝動買いしたMacBook Air M1とPythonの挑戦
当ブログを放置している間に、MacBook Air M1の最終モデルを衝動買いしていました。
新しい環境でPython3.13.2をインストールしたものの、chatterbotを使う際に
spacyのインストールがうまくいかず、どう対処するか悩んだお話です。
Pyenvのインストール
複数バージョンのPythonを併用するには、Pyenvをインストールするのがおすすめです。コパイロット君に教わりながら、Pyenvのインストール手順を進めました。
手順1: Brewのインストール
以下のコマンドを実行して、Homebrewをインストールします。
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install)"
手順2: Pyenvのインストール
Brewを使ってPyenvをインストールします。また、現在インストールされているPythonのバージョンを確認するために以下を設定します。
# Setting PATH for Python 3.13
PATH="/Library/Frameworks/Python.framework/Versions/3.13/bin:${PATH}"
export PATH
eval "$(/opt/homebrew/bin/brew shellenv)"
brew install pyenv
手順3: 設定ファイルの編集
以下のファイルを編集します(シェルに応じて選択)。
~/.bash_profile
~/.zshrc(通常macOSではzshがデフォルト)
~/.bashrc
以下の定義を追記して設定を反映します。
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init --path)"
source ~/.zshrc
手順4: PyenvでPythonバージョンを管理
インストール可能なバージョン一覧を確認し、必要なバージョンをインストールします。
pyenv install --list
pyenv install 3.12.9
pyenv global 3.12.9
pyenv local 3.13.2
結論
環境構築に時間を割きたくないため、理解が浅かったこともありPyenvの利用を断念しました。 次回は、Pyenvを使わずにPythonのバージョンを手動で切り替える方法について紹介します。
リトライ(2025/5/6)
というわけでpyenvリトライしました。
前回は、globalとlocalのところで??(pipどうなるの?)となって、時間がもったいなかったのでやめちゃいましたが、その後冷静に考えなおし普通にglobalは、特に指定がないと使われるデフォルトのpythonとpipのバージョン。localは設定したディレクトリ配下に移動して実行したときに使われるpythonとpipのバージョンと理解しました。
ということで>
pyenv global 3.13.2
これで意識せずにpython、pipを実行したときに使用されるバージョンは3.13.2になりました。
このあと、cd コマンドで バージョン 3.12.9を使用したいディレクトリに移動してコマンド実行。
pyenv local 3.12.9
それぞれの状況に応じて、バージョン確認。まず、ディレクトリを意識しない場合
>> python -V
Python 3.13.2
>> pip -V
pip 25.1.1 from /Users/ユーザー名/.pyenv/versions/3.13.2/lib/python3.13/site-packages/pip (python 3.13)
特定ディレクトリに移動した場合
>> python -V
Python 3.12.9
>> pip -V
pip 25.1.1 from /Users/ユーザー名/.pyenv/versions/3.12.9/lib/python3.12/site-packages/pip (python 3.12)
これでスッキリ解決しました。
pythonの公式サイトからインストーラをダウンロードしてインストールした場合とパッケージの保存場所が違うため、元々使っていた環境をお掃除して終了。
旧環境
/Library/Frameworks/Python.framework/Versions/3.13
pyenv
/Users/ユーザー名/.pyenv/versions/3.12.9/lib/python3.12
コメント
コメントを投稿