ProIT: медіа для профі в IT
3 хв

Лайфхаки: як виправити ModuleNotFoundError

author avatar ProIT NEWS

ModuleNotFoundError – поширене повідомлення про помилку у програмуванні, особливо в таких мовах, як Python, який залежить від модулів і бібліотек. Geeks for Geeks розглянули, як можна виправити цю помилку.

Під час імпортування кодів ви можете отримати повідомлення ModuleNotFoundError. Ця помилка виникає, коли ви не встановили цей модуль у своїй системі та намагаєтеся отримати доступ до модуля, який інтерпретатор Python не може знайти у своєму шляху пошуку або у шляху Python.

Syntax: ModuleNotFoundError: No module named ‘mymodule’

Ця помилка вказує на те, що Python не зміг знайти модуль mymodule у жодному з каталогів, в яких він шукав.

Як усунути помилку ModuleNotFoundError?

  • Перевірте, чи встановлено імпортовані модулі.
  • Перевірте, чи назва модуля та його написання правильні.
  • Перевірте, чи існує модуль.
  • Перевірте, чи правильний шлях до модуля.
  • Перевірте сумісність версій.

Перевірте, чи встановлені імпортовані модулі

Кожного разу, коли ви стикаєтеся з помилкою ModuleNotFoundError, треба перевірити, чи імпортовані модулі встановлено у вашому середовищі Python, використовуючи блоки try та except.

Python3

try:
    import module_name
except ModuleNotFoundError:
    print("The module 'module_name' is not installed. ")
    # You can include additional instruction here, such as installing the module.
else:
    # Code to run if the module  is successfully imported
    print(" Module 'module_name' is installed. ")

Результат:

The module 'module_name' is not installed.


Якщо модуль відсутній або не встановлений у вашому середовищі Python, можна встановити його за допомогою менеджера пакунків, наприклад pip, або перевірити, чи він уже включений у вашу інсталяцію Python.

pip install module_name

Перевірте, чи правильно написана назва модуля

Оскільки ми знаємо, що мова Рython чутлива до регістру, тож ще раз перевірте назву свого модуля та перевірте правильність регістру, щоб переконатися, що ви ввели правильну назву модуля і помилок немає.

import pands as pd


імпорт-панди

Результат, якщо було введено неправильну назву модуля

Перевірте, чи існує модуль

Переконайтеся, що модуль, який ви намагаєтеся імпортувати, справді існує. Ви можете перевірити наявність модуля, перевіривши стандартну бібліотеку Рython, будь-яку іншу сторонню бібліотеку, яку ви використовуєте, або порівняйте з офіційною документацією.

import tiger as td
імпорт-тигр

Перевірте, чи правильний шлях до модуля

У рython sys.path – це список імен каталогів, у яких рython шукатиме модулі, коли ви будете намагатися імпортувати модулі за допомогою оператора import. Переконайтеся, що модуль, який ви намагаєтеся імпортувати, знаходиться у каталозі, що є частиною python sys.path.

Якщо ваш модуль не знаходиться в жодному з цих каталогів, вам потрібно перемістити модуль до каталогу, який знаходиться в sys.path, або змінити змінні середовища PYTHONPATH. Також можна надрукувати шлях, щоб побачити, чи python шукає модулі у списку каталогів:

Python3

import sys
print(sys.path)

Результат

імпортний шлях

Перевірте сумісність версій

Переконайтеся, що модуль, який ви намагаєтеся імпортувати, сумісний із вашою версією python у вашій системі. Ці проблеми зазвичай виникають, коли у вас встановлено кілька версій пакету або коли ваш код залежить від певної версії пакету, яка недоступна. Щоб вирішити таку помилку, потрібно оновити свій python до останньої версії.

Щоб перевірити сумісність версій у ModuleNotFoundError, виконайте такі дії:

  1. Перевірте версію встановленого пакета: щоб переглянути список усіх встановлених пакетів та їхніх версій у вашому середовищі python, скористайтеся командою pip list.
  2. Перевірте свій код: перевірте код python, щоб побачити, чи ви вказали версію для модуля, який намагаєтеся імпортувати. Якщо ви встановили, переконайтеся, що версія відповідає потрібній.
  3. Перевірте пакети: якщо версії пакетів не збігаються, можна оновити пакет до потрібної версії за допомогою pip.

Оновлення пакета

pip install --upgrade package_name


Пониження пакетів до певної версії

pip install package_name==desired_version

Перевірте IDE або редактор

Переконайтеся, що IDE (інтегроване середовище розробки) або редактори коду, які ви використовуєте, не мають проблем із внутрішніми системами керування модулями. іноді також можливо, що IDE або редактори коду не розпізнають модуль належним чином. Перезапуск IDE або редактора коду або спроба іншого IDE або редактора може допомогти вам вирішити такі проблеми.

Висновок

Щоб усунути помилку ModuleNotFoundError у python, спершу потрібно двічі перевірити ім’я модуля, його статус інсталяції та розташування модуля у моделі проєкту і шляхах пошуку python. Також варто перевірити наявність будь-яких оновлень для вашого python до останньої версії.

Вирішивши ці проблеми, ви зможете усунути помилку й успішно імпортувати модуль у свої програми на Python. Якщо проблема залишається, перевірте свої IDE або редактори коду та спробуйте перезапустити їх, щоб побачити, чи вирішиться проблема.

Підписуйтеся на ProIT у Telegram, щоб не пропустити жодну публікацію!

Приєднатися до company logo
Продовжуючи, ти погоджуєшся з умовами Публічної оферти та Політикою конфіденційності.