この記事は以下の方を対象としています。
- Pythonの動作が安定しない方
- 新しいバージョンのPythonに現在の環境を効率的に再現したい方
- 職場でPythonの環境を共通化したい方
※本コラムは、WindowsでPythonの環境を構築されている方を対象としています。
本コラムのゴール
- Python環境を効率的に再構築できる
- 職場でPythonの環境を共通化できる
- Pythonの環境をクリーンにできる
Pythonの環境の再構築
Pythonがうまく動作しないとき、いろいろと原因を確認しても、原因の分からないとき、再インストールすることで解決する場合があります。Pythonのプログラムやライブラリのインストール方法は、各種書籍やインターネット上の記事がありますが、本日は、Pythonの環境を効率的に再構築する方法を解説します。
本日、解説する方法は、新しいバージョンのPythonに環境を構築する場合、職場で環境を共通化する場合、環境をクリーンに保ちたい場合にも有効です。
以下の手順でスムーズに再構築できます。
1.ライブラリの記録
現在インストールしているライブラリを記録しておきましょう。これにより、再インストール後に必要なライブラリを簡単に再インストールできます。
1-1.インストールしてあるライブラリ一覧の表示方法
Pythonの環境を再構築する前に、現在インストールしているライブラリを記録しておくと便利です。以下の手順で、インストール済みのライブラリの一覧を取得できます。
①コマンドプロンプトの開き方(Windowsの場合)
Windowsの検索画面に「CMD」と入力し、コマンドプロンプトを開きます。
②ライブラリの一覧をコマンドプロンプト画面に出力するコマンド
コマンドプロンプトに次のコマンドを入力します。
C:\Users\【PCの名前】>py -m pip list |
このコマンドを実行すると、現在インストールされているライブラリの一覧が表示されます。
以下は、出力結果の一例です。皆さんも出力されると、予想以上にライブラリがインストールされていることに驚かれると思います。これは、ライブラリをインストールすると、依存関係のあるライブラリも同時にインストールされるからです。
C:\Users\【PCの名前】>py -m pip list Package Version ————— ———– et-xmlfile 1.1.0 isort 5.13.2 numpy 2.1.1 openpyxl 3.1.5 packaging 24.1 pandas 2.2.2 pip 24.2 pipdeptree 2.23.3 pyperclip 1.9.0 python-dateutil 2.9.0.post0 pytz 2024.2 pywin32 306 six 1.16.0 tzdata 2024.1 zenhan 0.5.2 |
1-2.インストールしてあるライブラリ一覧のファイルへの出力方法
インストールされているライブラリの一覧をファイルに保存することで、ライブラリの一覧の記録を残すことができます。ファイルに記録を残しておくと、他のパソコンと同じ環境を作るため、あるいは、同一PCの中の異なるバージョンのPythonでの環境構築にも用いることができます。
以下の手順で、ライブラリの情報をファイルに出力します。
①ライブラリの一覧を出力するコマンド
先ほどと同様にコマンドプロンプトで操作します。コマンドプロンプトに次のコマンドを入力します。
C:\Users\【PCの名前】>py -m pip freeze > C:\Users\【PCの名前】\OneDrive\デスクトップ\requirements.txt |
このコマンドを実行すると、インストールされているライブラリの一覧が requirements.txt というファイルに作成され、デスクトップに保存されます。
2.依存関係の明確化
ライブラリの依存関係を理解することで、どのライブラリが他のライブラリに依存しているかを把握できます。以下の手順で、ライブラリの依存関係を可視化する方法を説明します。
①ライブラリの依存関係の理解と管理
pipdeptree というライブラリを使用することで、ライブラリの依存関係がツリー構造で表示され、どのライブラリがどのライブラリに依存しているかを明確に確認できます。これにより、依存関係を理解し、パッケージの管理を効率的に行うことができます。
②ライブラリ(pipdeptree)のインストール
以下のコマンドをコマンドプロンプト画面に入力し、ライブラリ「pipdeptree」をインストールします。
C:\Users\【PCの名前】>py -m pip install pipdeptree |
③依存関係を表示するコマンド
インストール後、次のコマンドを実行します。
C:\Users\【PCの名前】>py -m pipdeptree |
コマンドを実行すると、ライブラリがツリー構造で表示され、各ライブラリがどのライブラリに依存しているかが確認できます。
例として、先ほどのライブラリの一覧の場合、以下のようなツリー構造が表示されます。
C:\Users\【PCの名前】>py -m pipdeptree isort==5.13.2 openpyxl==3.1.5 └── et-xmlfile [required: Any, installed: 1.1.0] pandas==2.2.2 ├── numpy [required: >=1.26.0, installed: 2.1.1] ├── python-dateutil [required: >=2.8.2, installed: 2.9.0.post0] │ └── six [required: >=1.5, installed: 1.16.0] ├── pytz [required: >=2020.1, installed: 2024.2] └── tzdata [required: >=2022.7, installed: 2024.1] pipdeptree==2.23.3 ├── packaging [required: >=24.1, installed: 24.1] └── pip [required: >=24.2, installed: 24.2] pyperclip==1.9.0 pywin32==306 zenhan==0.5.2 |
④依存関係の確認
上記の例で説明すると、pandas ライブラリは numpy、python-dateutil、pytz 等に依存しています。一方、pandas とopenpyxlの間には依存関係はありません。このため、pandasを用い、データ分析を行い、その結果をExcelファイルに出力するためには、pandas とは別にopenpyxlをインストールする必要があることが分かります。
⑤パッケージ管理の役割
上記から分かるように、パッケージ管理ツール(例: pip)は、ライブラリの依存関係とバージョンを考慮して、自動的に必要なライブラリをインストールしています。これにより、依存関係を手動で管理する必要がなく、必要なライブラリを正しくインストールすることができます。
3.ライブラリの再インストール用のファイルの作成
すべてのプログラムやライブラリを削除する前に、記録したライブラリ情報を使って再インストール時に必要なライブラリを一度にインストールできるように準備しておきます。
①不要なライブラリの整理と必要なライブラリの特定
Pythonの活用の試行錯誤を行っているうちに、使わないライブラリが増えてしまうことがあります。これに対処するためには、依存関係を考慮し、本当に必要なライブラリだけを残すことが重要です。
②必要なライブラリの特定
先ほどのpipdeptreeを用い出力したツリー構造を見て、最上位に表示されているライブラリ(ツリーの一番上の階層にあるライブラリ)を確認します。
ツリーの最上位に表示されているライブラリを確認し、これらが本当に必要なライブラリかどうかを判断します。
③再インストール用ファイルの作成
requirements_2.txt というファイル名のテキストファイルを作成し、依存関係を考慮し、必要なライブラリ(最上位のライブラリ)を記入します。バージョン情報を記入しないでライブラリ名のみを記入することで、最新バージョンをインストールすることができます。
isort openpyxl pandas pipdeptree pyperclip pywin32 zenhan |
④不要なライブラリの判断
不要なライブラリや使っていないライブラリは、このファイルに記入しないことで、新しい環境には引き継がれません。使っていないライブラリをこの方法でクリーンアップした環境を構築することができます。
4.Pythonのアンインストール
Pythonをアンインストールします。
WindowsでPythonを削除するためには、以下の手順を実行します。
①アプリのアンインストール
Windowsですべてのアプリを表示します。例えば、Python3.12を表示しますので、その下の階層にある、IDLE、Python3.12等を1つ1つ削除します。
②フォルダの削除
以下のフォルダにあるデータを削除します。
C:\Users\【PCの名前】\AppData\Local\Programs\Python\Python 312
③環境変数(パス)の削除
Pythonをインストールしたとき、パスを通している場合、アンインストール後、環境変数Pathに設定されているPython関連のパスを削除します。
これにより、システムが誤って古いパスを参照しないようにします。
Windowsで、「環境変数」と入力します。
システムのプロパティ画面を表示します。「詳細設定」タブの「環境変数」を開きます。
「ユーザの環境変数」のPathの項目に、「C:\Users\【PCの名前】\AppData\Local\Programs\Python\Python」から始まる情報が記録されている方は、削除します。
この情報は、Pythonのインストール時、「Add to Path」にチェックを入れた方のみ記録された情報となります。
5.Pythonの再インストール
公式サイトから最新のPythonをダウンロードし、指示に従ってインストールを進めます。
6.ライブラリの再インストール
インストールが完了したら、最初に記録しておいたライブラリを再インストールします。これで以前と同じようにPythonの環境が整います。
以下のコマンドを使って保存したライブラリ情報を記載したファイル(requirements_2.txt)を基にライブラリを一括で再インストールできます。
C:\Users\【PCの名前】>py -m pip install -r C:\Users\tosot\OneDrive\デスクトップ\requirements_2.txt |
以上の手順で、Pythonの環境を効率的に管理し、クリーンな状態を保つことができます。
この方法は、Pythonの不具合が発生したときや、職場でのPython環境を共有する際にも便利です。問題が解決し、環境が整ったことでスムーズに作業を続けられます。
まとめ
Pythonは、オープンソースソフトウェアなので、無償で使えることもあり、勉強する方、活用される方が増えています。乗り遅れることなく、この流れの中に入りましょう。
現在、Pythonを使っている方のお話を聞くと、Pythonの将来性を感じて勉強を始めたとのお話を聞きます。現在、人気の高いプログラミング言語であり、将来、活躍の幅が広がることと思います。
今回は、Pythonの効率的に動作環境を再構築する方法について解説しました。
また、Pythonを活用した自動化ソリューションに興味がある方は以下のページをご覧ください。