Как решить AttributeError при импорте igraph?

Когда я импортирую пакет igraph в свой проект, я получаю атрибут AttributeError. Это происходит только в каталоге проекта:

[12:34][~]$ python2
Python 2.7.1 (r271:86832, Apr 15 2011, 12:09:10) 
[GCC 4.5.2 20110127 (prerelease)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import igraph
>>> 

[12:34][~]$ cd projectdir/
[12:34][projectdir]$ python2
Python 2.7.1 (r271:86832, Apr 15 2011, 12:09:10) 
[GCC 4.5.2 20110127 (prerelease)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import igraph
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib/python2.7/site-packages/igraph/__init__.py", line 42, in <module>
    import gzip
  File "/usr/lib/python2.7/gzip.py", line 36, in <module>
    class GzipFile(io.BufferedIOBase):
AttributeError: 'module' object has no attribute 'BufferedIOBase'
>>>

В каталоге проекта нет файла igraph.py:

[12:34][projectdir]$ ls -alR | grep igraph | wc -l
0

И нет кругового импорта.

Как я могу решить эту ошибку?

Ответ 1

Скорее всего, есть модуль io в ~/projectdir или один из путей, которые конфигурирует проект. Модуль gzip, импортируемый igraph, начинается с

import io

и ожидайте встроенный модуль io, а не ваш проект. Найдите каталог io или io.py или io.pyc. Он также может помочь изучить sys.path для любых других каталогов (возможно, вне ~/projectdir), которые могут содержать модули с именем io.