Import error python windows

Решение проблемы с ошибкой ImportError: No module named requests

Если при запуске программы на Python у вас появляется сообщение об ошибке:

значит у вас отсутствует модуль Requests. Requests не является встроенным модулем, поэтому его нужно загрузить. Официальная документация по модулю: https://pypi.python.org/pypi/requests

OSX/Linux

Если у вас установлен pip, для установки в OSX/Linux используйте команду:

Обратите внимание на версию, чтобы явно указать, для какой версии Python вы делаете установку, используйте pip2 или pip3.

На OSX если у вас установлен easy_install, вы также можете использовать

Windows

В этой операционной системе используйте команду:

Если у вас машина на Windows, где если он был установлен, easy_install может быть найден в вашем каталоге Python*\Scripts. (Помните, Path\easy_install.exe — это пример, моя, к примеру, такая C:\Python32\Scripts\easy_install.exe)

Если у вас Windows машина без установленного easy install, то вы можете получить его здесь: http://www.lfd.uci.edu/

Если вы хотите добавить библиотеку на Windows машине вручную, вы можете загрузить сжатую библиотеку, разархивировать и затем поместить в каталог Lib вашего Python.

Из исходников (универсальный способ)

Любая отсутствующая библиотека, обычно, доступна в исходниках на: https://pypi.python.org/pypi/. Затем:

На mac osx и Windows, после загрузки zip с исходником, распакуйте его и из терминала/cmd запустите

Troubleshooting ImportError¶

Since this information may be updated regularly, please ensure you are viewing the most up-to-date version.

ImportError¶

In certain cases a failed installation or setup issue can cause you to see the following error message:

The error also has additional information to help you troubleshoot:

Your Python version

Your NumPy version

Please check both of these carefully to see if they are what you expect. You may need to check your PATH or PYTHONPATH environment variables (see Check Environment Variables below).

The following sections list commonly reported issues depending on your setup. If you have an issue/solution that you think should appear please open a NumPy issue so that it will be added.

There are a few commonly reported issues depending on your system/setup. If none of the following tips help you, please be sure to note the following:

how you installed Python

how you installed NumPy

your operating system

whether or not you have multiple versions of Python installed

if you built from source, your compiler versions and ideally a build log

when investigating further and asking for support.

Using Python from conda (Anaconda)¶

Please make sure that you have activated your conda environment. See also the conda user-guide. If you use an external editor/development environment it will have to be set up correctly. See below for solutions for some common setups.

Using PyCharm with Anaconda/conda Python¶

There are fairly common issues when using PyCharm together with Anaconda, please see the PyCharm support

Using VSCode with Anaconda/conda Python (or environments)¶

A commonly reported issue is related to the environment activation within VSCode. Please see the VSCode support for information on how to correctly set up VSCode with virtual environments or conda.

Using Eclipse/PyDev with Anaconda/conda Python (or environments)¶

Please see the Anaconda Documentation on how to properly configure Eclipse/PyDev to use Anaconda Python with specific conda environments.

Читайте также:  Gnu grub как установить windows

Raspberry Pi¶

There are sometimes issues reported on Raspberry Pi setups when installing using pip3 install (or pip install). These will typically mention:

The solution will be to either:

to install the missing libraries expected by the self-compiled NumPy (ATLAS is a possible provider of linear algebra).

Alternatively use the NumPy provided by Raspbian. In which case run:

Debug build on Windows¶

Rather than building your project in DEBUG mode on windows, try building in RELEASE mode with debug symbols and no optimization. Full DEBUG mode on windows changes the names of the DLLs python expects to find, so if you wish to truly work in DEBUG mode you will need to recompile the entire stack of python modules you work with including NumPy

All Setups¶

Occasionally there may be simple issues with old or bad installations of NumPy. In this case you may just try to uninstall and reinstall NumPy. Make sure that NumPy is not found after uninstalling.

Development Setup¶

If you are using a development setup, make sure to run git clean -xdf to delete all files not under version control (be careful not to lose any modifications you made, e.g. site.cfg ). In many cases files from old builds may lead to incorrect builds.

Check Environment Variables¶

In general how to set and check your environment variables depends on your system. If you can open a correct python shell, you can also run the following in python:

This may mainly help you if you are not running the python and/or NumPy version you are expecting to run.

© Copyright 2008-2021, The SciPy community.
Last updated on Apr 17, 2021.
Created using Sphinx 3.5.4.

Ошибка Python » ImportError: нет названного модуля»

Python установлен в локальном каталоге.

мое дерево каталогов выглядит так:

чтобы запустить пример, я пишу python mountain.py , и в коде у меня есть:

и я получаю ошибку:

я уже проверил sys.path и там у меня есть каталог /site-packages . Кроме того, у меня есть файл __init__.py.bin в папке toolkit, чтобы указать Python, что это пакет. У меня тоже есть __init__.py.bin в каталоге examples.

Я не знаю, почему Python не может найти файл, когда он находится в sys.path . Есть идеи? Может ли это быть проблема с разрешениями? Мне нужно разрешение на выполнение?

21 ответов:

на основе ваших комментариев к посту orip, я думаю, что это случилось:

  1. вы редактировали __init__.py на windows.
  2. редактор windows добавил что-то непечатное, возможно, возврат каретки (конец строки в Windows-CR/LF; в unix это только LF) или, возможно, CTRL-Z (конец файла windows).
  3. вы использовали WinSCP для копирования файла в ваш unix box.
  4. WinSCP подумал: «в этом есть что-то, что не является основным текстом; Я поставлю .расширение bin для указания двоичных данных.»
  5. отсутствует __init__.py (ныне __init__.py.bin ) означает, что python не понимает инструментарий как пакет.
  6. создать __init__.py в соответствующем каталоге и все работает. ?

сделать импорт прогулка через ваши каталоги каждый каталог должен иметь .

On *nix, также убедитесь, что PYTHONPATH настроен правильно, особенно что он имеет такой формат:

(обратите внимание на .: в начале, так что он может искать в текущем каталоге тоже.)

Он также может быть в других местах, в зависимости от версии:

я столкнулся с чем-то очень похожим, когда я делал это упражнение в LPTHW; я никогда не мог заставить Python признать, что у меня есть файлы в каталоге, из которого я звонил. Но в конце концов мне удалось заставить его работать. Что я сделал, и что я рекомендую, чтобы попробовать это:

(примечание: из вашего первоначального сообщения я предполагаю, что вы используете машину на основе *NIX и запускаете вещи из командной строки, поэтому этот совет адаптирован к этому. Поскольку я запускаю Ubuntu, это то, что я сделал)

Читайте также:  Linux what is export command

1) изменить каталог (cd) в каталог выше каталог, в котором находятся ваши файлы. В этом случае вы пытаетесь запустить mountain.py файл, и пытается вызвать toolkit.interface.py модуль, которые находятся в отдельных каталогах. В этом случае вы перейдете в каталог, содержащий пути к обоим этим файлам (или, другими словами, в ближайший каталог, в котором находятся пути обоих этих файлов). Что в данном случае является

я решил свою собственную проблему, и я напишу резюме того, что было неправильно и решение:

файл должен быть вызван точно __init__.py . Если расширение отличается, например, в моем случае .py.bin тогда Python не может перемещаться по каталогам, а затем он не может найти модули. Для редактирования файлов необходимо использовать редактор Linux, например vi или нано. Если вы используете редактор Windows, это будет писать некоторые скрытые письмена.

еще одна проблема, которая повлияла на это, заключалась в том, что у меня была другая версия Python, установленная корнем, поэтому, если кто-то работает с локальной установкой python, убедитесь, что установка Python, на которой запущены программы, является локальным Python. Чтобы проверить это, просто сделайте which python , и посмотреть, если исполняемый файл в локальный каталог. Если нет, измените путь, но убедитесь, что локальный каталог Python находится раньше, чем другой Python.

пометить каталог как пакет вам нужен файл с именем __init__.py думаешь, это поможет?

простое решение-установить модуль с помощью python -m pip install

  • вместо pip install
  • вы можете использовать sudo в случае административных ограничений

  • используя PyCharm (часть JetBrains suite) вам нужно определить каталог скриптов как источник:
    Right Click > Mark Directory as > Sources Root

    1. у вас должен быть файл __ init__.py в том же каталоге, где это файл, который вы импортируете.
    2. вы не можете попытаться импортировать файл с тем же именем и быть файлом из 2 папок, настроенных на PYTHONPATH.

    например: / etc / environment

    PYTHONPATH=$PYTHONPATH:/opt / folder1:/opt / folder2

    / opt / folder1 / foo

    / opt / folder2 / foo

    и, если вы пытаетесь импортировать файл foo, python не будет знать, какой из них вы хотите.

    от импорта foo . > > > importerror: нет модуля с именем foo

    Юп. Вам нужен каталог, чтобы содержать __init__.py файл, который является файлом, который инициализирует пакет. Вот, взгляните на этой.

    the __init__.py файлы необходимы для того, чтобы Python рассматривал каталоги как содержащие пакеты; это делается для предотвращения непреднамеренного скрытия допустимых модулей, которые возникают позже в пути поиска модуля, в каталогах с общим именем, например string. В простейшем случае __init__.py может просто быть пустым файл, но он также может выполнить код инициализации для пакета или установить переменную __all__, описанную ниже.

    Linux: импортированные модули находятся в /usr / local/lib/python2. 7/dist-packages

    Если вы используете модуль, скомпилированный в C, не забудьте chmod файл. so после sudo setup.py install .

    в моем случае проблема была в том, что я связывался с debug python & boost::Python , что требует, чтобы расширение было FooLib_d.pyd не только FooLib.pyd ; переименование файла или обновление CMakeLists.txt свойства Исправлена ошибка.

    это смутило меня, черт возьми, — прошел через сообщения и сообщения, предлагающие уродливые хаки syspath (как вы видите мой __init__.py все есть). Ну вот и получается, что game/oblivion.py а игра / забвение сбивала с толку питона который выплюнул довольно бесполезный «нет модуля с именем RecordGroups». Мне было бы интересно найти обходной путь и / или ссылки, документирующие это (то же имя) поведение -> EDIT (2017.01.24) — посмотрите в что делать, если у меня есть модуль и пакет с тем же именем? интересно нормально пакетов имеет приоритет, но, по-видимому, наша пусковая установка нарушает это.

    EDIT (2015.01.17): я не упоминал, что мы используем custom launcher рассеченные здесь.

    моя проблема была в том, что я добавлена в каталог с __init__.py файл в PYTHONPATH, когда на самом деле мне нужно было добавить его родительский каталог.

    если вы пробовали все методы, приведенные выше, но не удалось, возможно, ваш модуль имеет то же имя как встроенный модуль. Или модуль с то же имя существующий в папке, которая имеет высокий приоритет в sys.path чем ваш модуль.

    для отладки, скажем from foo.bar import baz жалобы ImportError: No module named bar . Изменение на import foo; print foo , который покажет путь foo . Это то, что вы ожидаете?

    если нет, либо переименовать foo или использовать Абсолют импорт.

    после того, как я просто страдал от той же проблемы, я обнаружил, что мое решение было удалить все pyc файлы из моего проекта, похоже, что эти кэшированные файлы каким-то образом вызывают эту ошибку.

    самый простой способ я нашел, чтобы сделать это, чтобы перейти в папку проекта в проводнике Windows и поиск *.pyc , затем выбрав все ( Ctrl + A ) и удалять их ( Ctrl + X ).

    возможно, я мог бы решить свои проблемы просто удалив конкретный но я никогда не пробовал это

    я столкнулся с той же проблемой: Import error . Кроме того, библиотека была установлена на 100% правильно. Источником проблемы было то, что на моем ПК 3 версии python (Anaconda packet) были установлены). Вот почему библиотека была установлена не в нужном месте. После этого я просто перешел на правильную версию python в моей IDE PyCharm.

    исправлена моя проблема, написав print (sys.path) и обнаружил, что python использует устаревшие пакеты, несмотря на чистую установку. Удаление их сделало python автоматически использовать правильные пакеты.

    У меня была такая же ошибка. Это было вызвано тем, что кто-то создал папку в той же папке, что и мой скрипт, имя которой конфликтовало с модулем, который я импортировал из другого места. Вместо импорта внешнего модуля он заглянул в эту папку, которая, очевидно, не содержала ожидаемых модулей.

    у меня была та же проблема (Python 2.7 Linux), я нашел решение, и я хотел бы поделиться им. В моем случае у меня была структура ниже:

    In ‘main.py» я безуспешно пробовал все комбинации ниже:

    решение было гораздо проще, чем я думал. Я переименовал папку «буклет» в «буклет» и все. Теперь в Python можно импортировать как правило, вопрос класса с помощью в main.py’ код:

    от это я могу заключить, что имена пакетов (папки), такие как «буклет», должны начинаться с нижнего регистра, иначе Python путает его с именами классов и именами файлов.

    видимо, это не ваша проблема, но Джон Fouhy это ответ очень хороший, и этот поток имеет почти все, что может вызвать эту проблему. Итак, это еще одна вещь, и я надеюсь, что это может помочь другим.

    в моем случае я включал путь к пакету.яичная папка, а не фактический пакет под ней. Я скопировал пакет на верхний уровень, и это сработало.

    Оцените статью