MacでPythonを実行したときに、次のようなエラーが表示されて困ったことはありませんか。
ModuleNotFoundError: No module named 'xxx'
Python初心者の方が最初につまずきやすいエラーの一つが、
この ModuleNotFoundError です。
この記事では、Mac環境でModuleNotFoundErrorが発生する主な原因と、具体的な対処法を、
初心者向けにわかりやすく解説します。
この記事でわかること
- ModuleNotFoundErrorとは何か
- Macでこのエラーが出る主な原因
- pipでモジュールをインストールする方法
- VS Codeで起こりやすい注意点
- エラーが解決しないときのチェック項目
※ 本記事は Mac環境(python3) を前提に説明します。
ModuleNotFoundErrorとは?
ModuleNotFoundErrorは、
Pythonが指定されたモジュールを見つけられないときに出るエラーです。
例:
import requests
このようなコードを実行した際に、
ModuleNotFoundError: No module named 'requests'
と表示される場合、
Pythonの実行環境に requests モジュールが存在していない ことを意味します。
原因① モジュールがインストールされていない
最も多い原因は、
そもそもモジュールがインストールされていない ケースです。
対処法
ターミナルで、次のコマンドを実行します。
pip3 install モジュール名
例(requestsの場合):
pip3 install requests
インストール後、再度プログラムを実行してエラーが消えるか確認してください。
原因② 実行しているPythonとpipが一致していない
Macでは、複数のPythonが存在することがあります。
- python
- python3
- VS Codeが使用しているPython
この状態で、
- 別のPythonに対して pip install している
- 実行時は違うPythonが使われている
というケースがよくあります。
確認方法
まず、実行しているPythonのバージョンを確認します。
python3 --version
次に、pipがどのPythonに紐づいているか確認します。
pip3 --version
同じPythonのパスが表示されていれば問題ありません。
原因③ VS Codeで別のPythonが選択されている
VS Codeでは、
意図しないPythonが選択されている ことがあります。
確認ポイント
- 画面下部(ステータスバー)のPythonバージョン
- 実行したいPythonが選択されているか
違う場合は、Pythonの選択を切り替えてから再実行してください。
原因④ 仮想環境(venv)を使っている
仮想環境を使用している場合、
仮想環境を有効化していない状態で実行すると、
ModuleNotFoundErrorが発生します。
この場合は、仮想環境を有効化したうえで、
pip install を行う必要があります。
※ 仮想環境(venv)を使用している場合は、有効化してから実行してください。
MacでPythonの仮想環境(venv)が有効化できないときの対処法
それでも解決しないときのチェック項目
- スペルミスがないか(モジュール名)
- 大文字・小文字が一致しているか
- インストール後に再実行しているか
- 実行コマンドが
python3になっているか
まとめ
MacでModuleNotFoundErrorが出た場合、
多くは次のいずれかが原因です。
- モジュールがインストールされていない
- 実行しているPythonとpipが一致していない
- VS Codeで別のPythonが選択されている
- 仮想環境が有効化されていない
一つずつ確認すれば、ほとんどのケースは解決できます。
コメントを残す