ITメモベース

Python・開発環境まわりの「つまずきポイント」を整理するITメモ


Pythonでライブラリは入っているのにimportできない理由


Pythonで作業していて、

  • pip install は成功した
  • エラーも出ていない
  • しかし import するとエラーになる

という状況に遭遇したことはありませんか。

例えば、次のようなケースです。

pip3 install requests

は成功しているのに、

import requests

を実行するとエラーになる。

これはPython初心者だけでなく、
実務でも非常によく起こるトラブルです。

この記事では、
「ライブラリは入っているのにimportできない」原因
環境ごとに整理して解説します。

※ 本記事は Mac環境(python3)を前提 に説明します。

この記事でわかること

  • importできない主な原因
  • pipとPythonの関係
  • 仮想環境が関係するケース
  • 確認すべき基本コマンド

原因① 実行しているPythonとpipが一致していない

最も多い原因は、
pipでインストールしたPythonと、実行しているPythonが違うことです。

Macでは、次のような状態がよくあります。

  • pip3 は Python A を指している
  • 実行時は Python B が使われている

この場合、
ライブラリは「入っている」が
今使っているPythonからは見えない状態になります。

確認方法① 実行中のPythonを確認する

まず、
どのPythonを使っているかを確認します。

python3 --version

確認方法② pipが指しているPythonを確認する

次に、
pipがどのPythonに紐づいているかを確認します。

pip3 --version

表示されるパスが、
同じPython系統になっているか確認してください。

原因② VS Codeで別のPythonが選択されている

VS Codeを使っている場合、
エディタで選択されているPython
ターミナルと違うことがあります。

この状態だと、

  • pip install は成功する
  • import は失敗する

という現象が起こります。

VS Code下部(ステータスバー)に表示されている
Pythonを必ず確認してください。

原因③ 仮想環境(venv)が有効化されていない

仮想環境を使っている場合、

  • venvを作成した
  • しかし有効化していない

という状態では、
pip install がグローバル環境に入ってしまいます。

その結果、
仮想環境で実行すると import できません。

確認ポイント:

  • ターミナルに (venv) が表示されているか
  • 有効化してからpip installしているか

原因④ requirements.txtを使っている

チーム作業や学習教材でよくあるのが、
requirements.txt を使ったインストールです。

pip install -r requirements.txt

このときも、

  • 実行Python
  • pip
  • 仮想環境

がズレていると、
ライブラリが見えない状態になります。

よくある勘違い

「ライブラリは入っているのにimportできない」とき、
次のような誤解が多いです。

  • pip install が成功=必ず使える
  • Pythonは1つしかないと思っている
  • 仮想環境は自動で切り替わると思っている

実際には、
Pythonの実行環境がズレているだけ
というケースがほとんどです。

まず確認すべきチェックリスト

importできない場合は、
次の順で確認してください。

  1. python3 --version
  2. pip3 --version
  3. VS Codeで選択されているPython
  4. 仮想環境が有効化されているか

この順番で見れば、
ほぼ確実に原因が特定できます。

まとめ

Pythonでライブラリは入っているのに
importできない場合、原因は次のいずれかです。

  • pipとPythonが別の環境を指している
  • VS Codeで別Pythonが選択されている
  • 仮想環境が有効化されていない
  • requirements.txt利用時に環境がズレている

エラーそのものより、
実行環境のズレを疑うことが重要です。


コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

PAGE TOP