Pythonで標準搭載されていないパッケージを利用するには使用する環境へのインストールが必要です。
そんなPythonには標準的なパッケージインストーラーとして「pip」があります。これを使ってパッケージのインストール・アンインストール、インストールされているパッケージを確認や更新をすることが可能です。
本記事では「pip」を使用したPythonのパッケージ管理について紹介していきます。
目次
1.Pythonとpip
Pythonの基本
pipの紹介に入る前にPythonの基本を確認していきます。
Pythonはオープンソース(無償提供)のスクリプト言語です。Web開発も可能ですが、最近ではAI開発やデータ解析などの分野でも活躍しています。JavaやC#などに比べ学習が簡単で初心者でも習得しやすいことも魅力の1つです。
Pythonの代表的な特徴は以下のようなものがあります。
構文がシンプル
最大の特徴ともいえる、読みやすく書きやすいシンプルな構文です。
ライブラリやパッケージが豊富
オープンソースのため、公式以外にも外部ライブラリが用意されています。汎用的な機能をまとめたものからWeb開発やAI開発などの専門的なものまで豊富です。
マルチプラットフォーム対応
Windows・Mac・LinuxなどさまざまなOSに対応しており、使い慣れた環境や開発環境を変えることなく使用することができます。
pipとは
pipとは、「Pip Installs Packages」または「Pip Installs Python」の略で、Pythonで開発されたパッケージやライブラリを管理できるツールです。Pythonをインストールする際に一緒にインストールするように設定でき、ほとんどの開発において利用されている欠かせない存在になります。
pipはどこで管理しているのか
Pythonは豊富な標準ライブラリ以外に大量のサードパーティライブラリを管理するPyPI(Python Package Index)という場所があり、pipもそこで管理されています。PyPIはPythonコミュニティ(公式ではなく外部の集まり)が管理・運営している倉庫のようなもの(レポジトリともいう)で、20万を超えるライブラリやパッケージが管理されている状態です。
2.pipの準備とコマンド
pipの準備
pipを使用してパッケージの管理を始める前にインストールされているpipを最新の状態にしましょう。
使用する開発環境のコマンドプロンプトやターミナルなどで以下のコマンドを実行すれば、最新バージョンへの更新が可能です。
# pipを最新バージョンに更新 python -m pip install --upgrade pip
python -m pip --version |
これでPyPIから最新バージョンをインストールして使用できるようになります。
pipコマンド
ここではpipでパッケージ管理を行うにあたって、よく使用されるコマンドを見ていきましょう。
コマンド | 内容 |
---|---|
pip install | パッケージのインストールを行うコマンド 一括インストールやバージョン指定、更新なども可能 |
pip uninstall | パッケージのアンインストールを行うコマンド 一括のアンインストールなども可能 |
pip freeze | 現在の環境にインストールされているパッケージを一覧で出力するコマンド |
pip list | 現在の環境にインストールされているパッケージを一覧で出力するコマンド ※freezeとの違いは後述 |
pip show | 指定パッケージの情報を出力するコマンド |
【補足】
各コマンドの使用方法やオプションなどは上記コマンドに「--help」を付けて実行すれば確認することができます。
関連記事
Pythonインストール方法(Mac・Linux・Windows)ダウンロードから実行方法まで解説
Pythonのvirtualenvとは?仮想環境の作成・管理・応用・エラー対応までわかりやすく解説
3.pip install:パッケージ・ライブラリのインストールと更新
ここからは実際にpipコマンドを使用したパッケージのインストールについて見ていきましょう。
pip install:基本のインストール
実際にNumpyパッケージのインストールを行う場合を例に紹介していきます。
方法は簡単で、使用する開発環境のコマンドプロンプトやターミナルなどで以下のコマンド実行で可能です。
pip install numpy |
インストールが開始されると以下のようなメッセージが表示されます。
Collecting {パッケージ名} Downloading {パッケージのファイル} … Successfully installed {パッケージ名}
Requirement already satisfied: {パッケージ名} in {パッケージのパス} |
インストールの確認は以下のコマンドを実行し、インストールしたパッケージ名が表示されれば大丈夫です。
pip freeze |
pip install package name==Version No.:バージョン指定とダウングレード
Pythonの外部パッケージにはバージョンによって、処理が変更されている場合があります。そのため、特定のバージョンで作業を行いたい場合には、以下のようにパッケージ名の後に「==」を付けてバージョン番号を指定すれば可能です。
例)Numpyのバージョン1.21.1指定してインストール
pip install numpy==1.21.1 |
それ以外にも以下のようにすれば、指定バージョン以降を指定することもできます。
例)Numpyのバージョン1.21.0以降をインストール ※この場合はダブルクオートまたはシングルクオートで囲むことが必須
pip install “numpy>=1.21.0” |
pip install -r requirements.txt:ファイルでの一括インストール
前述にもあるようにPythonは豊富なパッケージを持っているため、パッケージを1つずつインストールするのは大変です。そこで使用されるのがrequirementsファイルと一括インストールのオプション「-r」になります。
例として、「Flask」「GDAL」「Jinja2」「numpy」を一括でバージョンを指定してインストールする場合で見ていきましょう。
【requirements.txtの中身】
Flask>=0.12.2 GDAL==1.11.1 Jinja2==2.10 numpy>=1.21.1 |
【実行コマンド】
pip install -r requirements.txt |
このようにして一括でのインストールが可能です。バージョンの指定を間違えると「pip install」できないため、バージョン番号は間違えないように確認が大切になります。
Pythonの開発においては「requirements.txt」を編集して、パッケージの管理をすることが多いため覚えておきましょう。
pip install --upgrade(-U):最新版へのパッケージ更新
ここで紹介するのは最新バージョンへのアップグレード方法です。特に難しいことはなく以下のようなコマンドの実行で行えます。
【Numpyのアップグレード】
pip install --upgrade numpy pip install -U numpy |
「requirements.txt」で管理している場合にはあまり使用しない方法で、主な用途はpipの更新です。
【補足】pip install できない場合
pip installができない失敗するのは基本的には以下のような場合になります。
PyPIに内パッケージ・ライブラリ名の指定
存在しないバージョンの指定
それぞれ実行例を見ていきましょう。
例1)PyPIにないパッケージ名でのインストール
pip install num
ERROR: Could not find a version that satisfies the requirement num (from versions: none) ERROR: No matching distribution found for num |
例2)numpyに存在しないバージョンの指定
pip install "numpy==1.21.9"
ERROR: Could not find a version that satisfies the requirement numpy==1.21.9 (from versions: 1.3.0, 1.4.1, 1.5.0, 1.5.1, 1.6.0, 1.6.1, 1.6.2, 1.7.0, 1.7.1, 1.7.2, 1.8.0, 1.8.1, 1.8.2, 1.9.0, 1.9.1, 1.9.2, 1.9.3, 1.10.0.post2, 1.10.1, 1.10.2, 1.10.4, 1.11.0, 1.11.1, 1.11.2, 1.11.3, 1.12.0, 1.12.1, 1.13.0, 1.13.1, 1.13.3, 1.14.0, 1.14.1, 1.14.2, 1.14.3, 1.14.4, 1.14.5, 1.14.6, 1.15.0, 1.15.1, 1.15.2, 1.15.3, 1.15.4, 1.16.0, 1.16.1, 1.16.2, 1.16.3, 1.16.4, 1.16.5, 1.16.6, 1.17.0, 1.17.1, 1.17.2, 1.17.3, 1.17.4, 1.17.5, 1.18.0, 1.18.1, 1.18.2, 1.18.3, 1.18.4, 1.18.5, 1.19.0, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.19.5, 1.20.0, 1.20.1, 1.20.2, 1.20.3, 1.21.0, 1.21.1, 1.22.0, 1.22.1, 1.22.2, 1.22.3, 1.22.4, 1.23.0, 1.23.1, 1.23.2, 1.23.3, 1.23.4, 1.23.5, 1.24.0, 1.24.1, 1.24.2, 1.24.3, 1.24.4, 1.25.0, 1.25.1, 1.25.2, 1.26.2, 1.26.3, 1.26.4, 2.0.0, 2.0.1, 2.0.2, 2.1.0rc1, 2.1.0, 2.1.1, 2.1.2, 2.1.3, 2.2.0rc1, 2.2.0, 2.2.1, 2.2.2, 2.2.3, 2.2.4) ERROR: No matching distribution found for numpy==1.21.9 |
関連記事
Pythonライブラリとは?使い方や調べ方、おすすめのライブラリなどわかりやすく解説
4.pip uninstall:パッケージ・ライブラリのアンインストール
pip uninstall:基本の使い方
使用されなくなったパッケージ・ライブラリのアンインストールや環境をリセットしたい時などに使用されるコマンドになります。
基本的な使用方法は以下の通りです。
【Numpyのアンインストール】
pip uninstall numpy |
実行すると以下のようなメッセージが表示されます。
Found existing installation: numpy 1.21.1 Uninstalling numpy-1.21.1: … Proceed (Y/n)? |
最後に表示される「Proceed (Y/n)?」に対して「y」と答えれば、パッケージ・ライブラリのアンインストール開始です。
最後の確認を省略したい場合や一括のアンインストールの場合には以下のようなコマンドで実行できます。
# 確認(Proceed (Y/n)?)の省略 pip uninstall --yes numpy
pip uninstall -r requirements.txt --yes |
【補足】pip uninstallできない場合
pip uninstallが失敗する場合には以下のような場合があります。
インストールしていないパッケージ・ライブラリの指定
パッケージ・ライブラリ名の記載ミス
それぞれ実行例を見ていきましょう。
例1)インストールしていないパッケージ名(pandas)でのアンインストール
pip uninstall pandas
WARNING: Skipping pandas as it is not installed. |
例2)パッケージ名の記載ミス
pip uninstall nump
WARNING: Skipping nump as it is not installed. |
5.pip list, freeze, show:インストールしたパッケージ・ライブラリ確認
pip list:パッケージ・ライブラリの一覧確認
「pip list」は実行するとインストール済みのライブラリを確認することが可能です。
実行すると以下のように表示されます。
pip list
Package Version ------------ ------- blinker 1.9.0 click 8.1.8 colorama 0.4.6 Flask 3.1.0 itsdangerous 2.2.0 Jinja2 2.10 MarkupSafe 3.0.2 numpy 2.2.3 pip 25.0.1 Werkzeug 3.1.3 |
「-v」オプション
このオプションを使用することで以下のように「インストール場所(Location)」と「インストーラー(Installer)」を確認可能です。
pip list -v
Package Version Location Installer ---------------- ----------- ----------------------------------------------------- --------- blinker 1.9.0 ~\Python\Python313\Lib\site-packages pip click 8.1.8 ~\Python\Python313\Lib\site-packages pip colorama 0.4.6 ~\Python\Python313\Lib\site-packages pip Flask 3.1.0 ~\Python\Python313\Lib\site-packages pip itsdangerous 2.2.0 ~\Python\Python313\Lib\site-packages pip Jinja2 2.10 ~\Python\Python313\Lib\site-packages pip MarkupSafe 3.0.2 ~\Python\Python313\Lib\site-packages pip numpy 2.2.3 ~\Python\Python313\Lib\site-packages pip pip 25.0.1 ~\Python\Python313\Lib\site-packages pip Werkzeug 3.1.3 ~\Python\Python313\Lib\site-packages pip |
「--outdated」オプション
PyPIに登録されている情報をもとにアップグレードの有無を一括で確認する際に便利なオプションで実行すると以下のように確認できます。
pip list --outdated
Package Version Latest Type ------- ------- ------ ----- Jinja2 2.10 3.1.6 wheel |
pip freeze:パッケージ・ライブラリの一覧確認とファイルへの出力
「pip freeze」もパッケージ・ライブラリの一覧確認が可能です。「pip list」と違うのは出力形式と応用にあります。
普通に実行すると以下の通りです。
pip freeze
blinker==1.9.0 click==8.1.8 colorama==0.4.6 Flask==3.1.0 itsdangerous==2.2.0 Jinja2==2.10 MarkupSafe==3.0.2 numpy==2.2.3 Werkzeug==3.1.3 |
このように「パッケージ・ライブラリ名==バージョン番号」の形式で出力されます。また、通常では「pip」などの一部パッケージ・ライブラリは表示されないため、すべてを上記の形式で確認したい場合は以下の通りです。
# ①pip freezeのオプションでの方法 pip freeze --all
pip list --format freeze
blinker==1.9.0 click==8.1.8 colorama==0.4.6 Flask==3.1.0 itsdangerous==2.2.0 Jinja2==2.10 MarkupSafe==3.0.2 numpy==2.2.3 pip==25.0.1 Werkzeug==3.1.3 |
重要なのはこの形式で気づいた方もいるかもしれませんが、バージョン指定やrequirements.txtの形式と同じな点になります。
そして、以下のコマンドでrequirements.txtに現在インストール済みのパッケージ・ライブラリを記録することが可能です。
pip freeze > requirements.txt |
この方法と「pip uninstall」を組み合わせれば、インストール済みパッケージ・ライブラリ(pipを除く)を全て一括でアンインストールすることができます。
pip show:特定パッケージ・ライブラリの確認
「pip show」はパッケージ・ライブラリの各種情報とインストール済みパッケージ・ライブラリの依存関係をチェックすることが可能です。
例として、Flaskを対象に実行すると以下のようになります。
pip show Flask
Name: Flask Version: 3.1.0 Summary: A simple framework for building complex web applications. Home-page: Author: Author-email: License: Location: ~\Python\Python313\Lib\site-packages Requires: blinker, click, itsdangerous, Jinja2, Werkzeug Required-by: |
PyPIに登録されている情報と使用中の環境に関する情報を表示し、内容としては上から以下の通りです。
パッケージ・ライブラリ名
インストールしているバージョン情報
パッケージ・ライブラリ概要
公式サイトのURL
作成者
作成者のメールアドレス
ライセンス情報
インストール場所
対象のパッケージ・ライブラリと依存関係があるパッケージ・ライブラリ(インストール時に自動的にインストールされるパッケージ・ライブラリ)
対象のパッケージ・ライブラリに依存しているパッケージ・ライブラリ
このようにパッケージ・ライブラリに関する情報が表示されるため、パッケージ・ライブラリの動作に問題があった際に公式サイトや依存関係があるパッケージ・ライブラリなどを調べることで問題の解決につながることもあるため、覚えておくと良いでしょう。
関連記事
【2025年版】Pythonの最新バージョン|新機能やバージョンの選び方、インストール方法を解説
6.まとめ
ここまでPythonのパッケージインストーラー「pip」の活用について紹介いたしました。
豊富なパッケージ・ライブラリを管理する必要があるPythonにとって、pipをうまく使いこなすことは必須技能です。使用方法を理解し、活用することでプロジェクトにあったパッケージ・ライブラリ管理を行い、業務の最適化を目指してみてください。
本記事が皆様にとって少しでもお役に立てますと幸いです。
「フリーランスボード」は、数多くのフリーランスエージェントが掲載するITフリーランスエンジニア・ITフリーランス向けの案件・求人を一括検索できるサイトです。
開発環境、職種、単価、稼働形態、稼働日数など様々な条件から、あなたに最適なフリーランス案件・求人を簡単に見つけることができます。
単価アップを目指す方や、自分の得意なスキルを活かせる案件に参画したい方は、ぜひ「フリーランスボード」をご利用ください。