Ошибка импорта в scandir

#python-2.7 #importerror #scandir

#python-2.7 #ошибка импорта #scandir

Вопрос:

Я пытаюсь использовать пакет scandir в качестве альтернативы os.walk в python 2.7. Однако во время импорта ImportError возникает следующий вопрос.

 Python 2.7.12 (default, Jul  1 2016, 15:12:24) 
[GCC 5.4.0 20160609] on linux2
Type "help", "copyright", "credits" or "license" for more information.

>>> from scandir import scandir, walk
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "scandir.py", line 2, in <module>
    from scandir import walk
ImportError: cannot import name walk
  

Я не смог найти никаких ссылок на эту ошибку (кроме циклического импорта) после тщательного поиска и на данный момент совершенно сбит с толку. Любая помощь очень ценится!

Комментарии:

1. Вы обратили на это внимание? github.com/benhoyt/scandir

2. @JamM. Эрнандеск. Я пытаюсь использовать упомянутый вами модуль. Я установил его, используя pip install scandir внутри virtualenv. Но я получаю вышеуказанные ошибки после установки пакета!

3. Я автор scandir пакета, и это очень странно. Я только что попробовал установить pip, и этот оператор импорта отлично работает как на Python 3.5, так и на 2.7. Что произойдет, если вы просто сделаете import scandir ? И что тогда он говорит, когда вы вводите scandir (чтобы показать модуль / исходный файл)?

Ответ №1:

У вас есть файл с именем scandir.py в текущем рабочем каталоге.

переименуйте его, и пусть scandir в sys.path творит свое волшебство.