- 技術 💻
pip No matching distribution foundの直し方
ERROR: No matching distribution found for pandas==3.0.0 は、pip が、指定された名前・版で、今の Python と OS に入れられるパッケージを見つけられなかったときのエラーです。 直前の行の (from versions: ...) が、原因を見分ける手がかりです。
from versions: の表示 |
原因 | 直し方 |
|---|---|---|
none |
名前の間違い、Windows 専用など OS が合わない、パッケージの置き場所につながらない | pip の名前を確かめる、OS・ネットワークを確かめる |
| 版の一覧が出る | 指定した版が無い、今の Python では使えない版 | 版を直す、Python の版を変える |
直前に Ignored the following versions that require a different python version |
Python の版が古すぎる・新しすぎる | 対応する Python で仮想環境を作る |
確認環境:pip 26.2.1、Python 3.10・3.14(Linux)(確認日 2026年10月11日)。
本記事の内容は、ご自由にお使いください。
ご利用の際は、出典として本ページへのリンクを記載いただけますようお願いします。
(記載例)出典:株式会社RJC「pip No matching distribution foundの直し方」
原因1:import の名前と、pip の名前が違う
$ pip install cv2
ERROR: Could not find a version that satisfies the requirement cv2 (from versions: none)
ERROR: No matching distribution found for cv2
プログラムに書く import cv2 の名前と、pip で入れるときの名前が違うライブラリがあります。
| import の名前 | pip の名前 | pip install import の名前 の結果(確認環境) |
|---|---|---|
cv2 |
opencv-python |
No matching distribution found |
PIL |
Pillow |
No matching distribution found |
yaml |
PyYAML |
No matching distribution found |
dateutil |
python-dateutil |
No matching distribution found |
sklearn |
scikit-learn |
別のエラー(The 'sklearn' PyPI package is deprecated, use 'scikit-learn') |
bs4 |
beautifulsoup4 |
入る(beautifulsoup4 を入れるだけの代わりのパッケージ) |
dotenv |
python-dotenv |
入る(説明に Deprecated package とある別のパッケージ) |
jwt |
PyJWT |
入る(import jwt で使える、別の作者のライブラリ) |
確認環境で、pip の名前で取得した wheel の中身を見ると、opencv-python には cv2、Pillow には PIL、PyYAML には yaml、PyJWT には jwt のフォルダーが入っていました。
注意が必要なのは、エラーにならないものです。pip install jwt で入ったのは、PyJWT ではなく、同じく import jwt で使える別のライブラリでした。サンプルコードと使い方が違うので、AttributeError などの別のエラーになります。pip の名前は、ライブラリの公式ドキュメントのインストール手順で確かめます。
原因2:Python の版が合わない
(Python 3.10 で)
$ pip install pandas==3.0.0
ERROR: Ignored the following versions that require a different python version: 3.0.0 Requires-Python >=3.11; ...
ERROR: Could not find a version that satisfies the requirement pandas==3.0.0 (from versions: 0.1, 0.2, ...)
ERROR: No matching distribution found for pandas==3.0.0
Requires-Python >=3.11:pandas 3.0.0 は Python 3.11 以上が必要で、3.10 では入れられませんでした。パッケージは、使える Python の版を情報として持っていて、pip は合わない版を候補から外します(Python Packaging User Guide)。
$ pip index versions pandas (Python 3.10 で)
pandas (2.3.3)
Available versions: 2.3.3, 2.3.2, 2.3.1, ...
pip index versions は、今の Python で入れられる版だけを表示しました(3.10 では 2.3.3 が最新)。
| 直し方 | 内容 |
|---|---|
| 新しい Python で仮想環境を作る | python3.12 -m venv .venv、または uv venv -p 3.12 |
| 版の指定を外す・下げる | pip install pandas(3.10 なら 2.3.3 が入った) |
| requirements.txt の版を見直す | 他の人の環境(新しい Python)で作った一覧をそのまま使っていないか |
逆に、Python が新しすぎる場合も同じエラーになります。出たばかりの Python の版では、ライブラリ側の対応が追いついていないことがあるので、pip index versions で入れられる版があるか確かめます。
別の Python の版で入るか、先に確かめる
pip download --no-deps --only-binary=:all: --python-version 3.12 pandas==3.0.0 -d /tmp/x
確認環境(Python 3.10)でも、--python-version 3.12 を付けると、3.12 用の wheel(pandas-3.0.0-cp312-...whl)が取得できました。 Python を入れ替える前に、その版なら入るかを確かめられます。
原因3:その OS 用のパッケージが無い
(Linux で)
$ pip install pywin32
ERROR: Could not find a version that satisfies the requirement pywin32 (from versions: none)
pywin32 は Windows 用のパッケージで、Linux では from versions: none になりました。 Windows で作った requirements.txt を、Linux のサーバーや Docker で使うと出ます。OS ごとに必要なものは、requirements.txt に条件を付けて書き分けます(pywin32; sys_platform == "win32")。
原因4:パッケージの置き場所につながらない
$ pip install --index-url http://127.0.0.1:9/simple requests
Looking in indexes: http://127.0.0.1:9/simple
ERROR: Could not find a version that satisfies the requirement requests (from versions: none)
ERROR: No matching distribution found for requests
つながらないときも、最後は同じ from versions: none でした。 requests のように確実にある名前でも none なら、ネットワークを疑います。
| 確認すること | 方法 |
|---|---|
| どこを見ているか | 出力の Looking in indexes:、pip config list |
| 社内のプロキシ | 環境変数 HTTPS_PROXY、pip の --proxy |
| 社内のミラー(独自の置き場所) | そのミラーに、目的のパッケージと版があるか |
確認の手順(チェックリスト)
| 順番 | 確認すること | 方法 |
|---|---|---|
| 1 | from versions: の表示 |
none か、一覧か |
| 2 | 名前 | import の名前ではなく、pip の名前か(公式ドキュメント) |
| 3 | Python の版 | python -V、Requires-Python の表示 |
| 4 | 入れられる版 | pip index versions パッケージ名 |
| 5 | OS | Windows 専用などでないか |
| 6 | ネットワーク | Looking in indexes:、プロキシ |
よくある質問
Q. pip を新しくすれば直りますか。 A. 名前・Python の版・OS が原因なら、pip を新しくしても直りません。上の表で原因を確かめます。
Q. externally-managed-environment というエラーが出ます。
A. OS の Python に直接入れようとしたときの別のエラーです。関連記事の「externally-managed-environmentの直し方|pip」で扱っています。
まとめ
- pip が入れられるパッケージを見つけられなかったエラー。
from versions:で原因を見分ける - import の名前と pip の名前が違う(cv2 → opencv-python、PIL → Pillow、yaml → PyYAML)
jwtなどは、エラーにならず別のライブラリが入るRequires-Pythonは Python の版が合わない。pip index versionsで入れられる版を見るnoneは、名前・OS・ネットワークのどれか
参考・出典
確認日はいずれも 2026年10月11日です。
- pip documentation「pip index」:https://pip.pypa.io/en/stable/cli/pip_index/
- Python Packaging User Guide「Dropping support for older Python versions」:https://packaging.python.org/en/latest/guides/dropping-older-python-versions/
本記事の内容は、ご自由にお使いください。
ご利用の際は、出典として本ページへのリンクを記載いただけますようお願いします。
(記載例)出典:株式会社RJC「pip No matching distribution foundの直し方」
株式会社RJC ― SI事業・SES事業・AI駆動開発。RJCは一緒に成長を楽しめる会社です。
WE ARE HIRING
RJCで一緒に開発しながら、
成長を楽しみませんか?
RJCは、Web・モバイル・AIを活用した開発プロジェクトで、テックリードやPM・PMOも活躍するシステム開発会社です。会社を知る、待遇を確かめる、話を聞いてみる。気になるところ見てみてください!
- 127日年間休日
- 12時間平均残業時間
- 毎日ガチャ遊びココロも大切にする福利厚生。アマギフなどの賞品ラインナップ!
ほかにも、チケットレストラン、書籍読み放題、2年ごとの慰労報奨(休暇 or 金一封)、11期連続の黒字決算。