WindowsでPythonスクリプトを実行中に発生する『ModuleNotFoundError』の解決方法

Sponsored Link

はじめに

Windows環境でPythonスクリプトを実行している際に、ModuleNotFoundError: No module named 'XXXX'というエラーが表示されることがあります。このエラーは、スクリプトで必要なモジュールが見つからない場合に発生します。本記事では、このエラーの原因を解説し、解決策を具体的に説明します。

発生するエラーの詳細

以下は、エラーが発生した際の例です。

$ python my_script.py  
ModuleNotFoundError: No module named 'requests'

このエラーは、スクリプト内でimport requestsを実行した際に、Pythonがrequestsモジュールを見つけられない場合に発生します。

エラーの意味

  • ModuleNotFoundError: Pythonが指定したモジュールを探せなかったことを示します。
  • No module named ‘requests’: 必要なモジュール名(ここではrequests)がインストールされていない、または適切に認識されていない状態です。

解決方法

このエラーを解消するためには、以下の手順を順に試してください。

1. モジュールがインストールされているか確認する

まず、該当モジュールがインストール済みかを確認します。以下のコマンドを実行してください。

pip show requests  

例:

$ pip show requests  
Name: requests
Version: 2.28.1
Location: c:\python\lib\site-packages
Requires:

上記のように情報が表示されれば、モジュールはインストール済みです。もし何も表示されない場合、モジュールはインストールされていません。

2. モジュールをインストールする

モジュールがインストールされていない場合、以下のコマンドでインストールしてください。

pip install requests  

インストールが正常に完了した場合、再度スクリプトを実行してエラーが解消されるか確認してください。

3. Python環境を確認する

複数のPython環境がインストールされている場合、使用しているPython環境とpipの環境が異なる可能性があります。

使用中のPython環境を確認

以下のコマンドで現在のPython環境を確認できます。

python --version  

例:

$ python --version  
Python 3.10.4

pipが同じ環境にインストールされているか確認

以下のコマンドでpipが同じ環境を参照しているか確認してください。

pip --version  

例:

$ pip --version  
pip 22.0.4 from c:\python\lib\site-packages (python 3.10)

もしPythonのバージョンが一致しない場合は、正しい環境でpipを使用する必要があります。Python 3.x用のpipを明示的に指定するには以下のようにします。

python -m pip install requests  

4. 仮想環境を使用している場合

仮想環境を使用している場合、モジュールがその環境にインストールされていない可能性があります。以下の手順を試してください。

  1. 仮想環境をアクティベートする
source venv/bin/activate    # macOS/Linux  
venv\Scripts\activate # Windows
  1. 仮想環境内でモジュールをインストールする
pip install requests  
  1. 再度スクリプトを実行してエラーが解消されるか確認する

5. PATHの設定を確認する

システムのPATHが適切に設定されていないと、Pythonやpipが正しく動作しない場合があります。

PATHの確認方法

Windowsのコマンドプロンプトで以下を実行します。

where python  

複数のパスが表示される場合、誤ったPython環境が優先されている可能性があります。必要に応じてシステムの環境変数を修正してください。

他の可能性と対応策

モジュール名のタイポを確認する

モジュール名を間違えて記載している場合も、同様のエラーが発生します。スクリプト内のimport文を確認してください。

例:

# 間違い  
import Request

# 修正
import requests

モジュールの依存関係を確認する

特定のモジュールが依存する他のモジュールが不足している場合があります。その場合は、エラーメッセージに従って不足しているモジュールをインストールしてください。

まとめ

WindowsでPythonスクリプト実行時に発生する「ModuleNotFoundError」の原因と解決策を解説しました。以下をチェックリストとして活用してください。

  1. モジュールがインストールされているか確認する
  2. 正しい環境でモジュールをインストールする
  3. 仮想環境の設定を確認する
  4. PATHの設定が正しいか確認する

これらの手順を順に試せば、多くの場合、問題を解決できます。Python環境を整理し、快適な開発環境を構築しましょう。

Welcome to Python.org
The official home of the Python Programming Language

参考

[Python] ModuleNotFoundError解決方法 - Qiita
Pythonで別ディレクトリのモジュールをインポートしようとすると、ImportErrorやModuleNotFoundErrorが吐き出されることがあります。このエラーはインポートしようとしたモ…
【Python】ModuleNotFoundErrorとは? | pythonエラー解消ドットコム
PythonのModuleNotFoundError解説: その意味、一般的な事例、よくある質問への回答を通じて、Pythonプログラミングにおける最も一般的なエラーを理解し、解決する方法を学びます。
タイトルとURLをコピーしました