Python環境構築〜複数バージョン管理
- 仮想環境に入るまでを一通り
// ディレクトリ作成
mkdir python
// ディレクトリに移動
cd python
// ディレクトリで3.10.4を使う
pyenv local 3.10.4
// venvという名前の仮想環境を作成
python -m venv venv
// 仮想環境に入る
source ./venv/bin/activate
// ライブラリ一覧取得
pip freeze > requirements.txt
// 仮想環境を抜ける
deactivate
#pipについて
pipのアップデート
python -m pip install --upgrade pip
- インポートするライブラリと同じ名前のファイル名だと循環参照(most likely due to a circular import)のエラーになる
AttributeError: partially initialized module 'ssl' has no attribute 'get_server_certificate' (most likely due to a circular import)
デフォルトpythonバージョン確認
python --version
Python 2.7.16
Homebrew インストール
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
pyenvインストール
brew install pyenv
pyenv依存関係インストール
brew install openssl readline sqlite3 xz zlib
pythonインストールできるバージョン一覧取得
pyenv install --list
欲しいバージョンがない時は、brewとフォーミュラをアップデートする
brew update # brew本体のアップデート
brew upgrade # フォーミュラのアップデート
brew info pyenv # pyenvフォーミュラのバージョン確認
バージョン指定インストール(3.10.4の場合)
pyenv install 3.10.4
デフォルトバージョンの設定(今回はスキップ)
pyenv global 3.8.6
ホームディレクトリに移動
cd ~
zshの設定ファイルを作成
echo "" >> .zshrc
テキストエディットで設定ファイルを開く
open -a textedit ~/.zshrc
内容を記述
# Pyenv initialization
if command -v pyenv 1>/dev/null 2>&1; then
eval "$(pyenv init -)"
fi
zshを再起動
exec zsh
一時ディレクトリを作成
mkdir temporary
一時ディレクトリに移動
cd temporary
一時ディレクトリで3.10.4を使う
pyenv local 3.10.4
一時ディレクトリのバージョン確認
python --version
Python 3.10.4
ホームディレクトリにもどる
cd ..
ホームディレクトリのバージョン確認
python --version
Python 2.7.16
一時ディレクトリに移動
cd temporary
venvという名前の仮想環境を作成
python -m venv venv
内容確認
tree -a
├── .python-version
└── venv
├── bin
│ ├── Activate.ps1
│ ├── activate
│ ├── activate.csh
│ ├── activate.fish
│ ├── pip
│ ├── pip3
│ ├── pip3.10
... ...
│ ├── python3 -> python
│ └── python3.10 -> python
├── include
├── lib
│ └── python3.10
│ └── ...
...
└── pyvenv.cfg
仮想環境に入る
source ./venv/bin/activate
プロンプトに(venv)が追加されれる
(venv)temporary %
バージョン確認
python --version
Python 3.10.4
python
which python
~/temporary/venv/bin/python
仮想環境を抜ける
deactivate
ライブラリ一覧取得
pip freeze > requirements.txt
ライブラリ一覧インストール
pip install -r requirements.txt