2016-09-26 5 views
0

Моя структура папок в pycharm выглядит следующим образом.Ошибка импорта: нет модуля с именем common

--python 
    --concepts 
    --common 
     --myds.py 
     --__init__.py 
    --data_structures 
     --test_ds.py 

У меня есть следующие строки в test_ds.py

from common import my_ds 

я получаю следующее сообщение об ошибке.

ImportError: No module named 'common' 

Я добавил common в Settings --> Project Interpreter -> Interpreter Paths и папка отображается как library root.

Все еще почему я получаю эту ошибку.

ответ

0

Вам нужно сделать свою общую папку в пакете python, чтобы импортировать ее в python. Я думаю, вы пытались это сделать и создали файл init в папке common, но на самом деле это должно быть __init__.py. Переименуйте его так, а затем ваш пакет будет виден на python.

Надеюсь, это поможет!

1

Попробуйте from ..common import my_ds. Также убедитесь, что он имеет файл __init__.py в этом каталоге (не требуется, но это хорошая практика).

Что касается .., они указывают, что вы импортируете из родительского пакета в тот, который вы сейчас используете.

+0

Я получаю 'SystemError: родительский модуль '' не загружен, не может выполнять относительный импорт', когда используется' ..' – liv2hak

+0

О, родительский каталог также нуждается в файле '__init __. Py'! Даже если он полностью пуст. Если родительский каталог не предназначался для пакета python, вам придется реструктурировать свои пакеты по-разному. –

+0

По родительскому каталогу вы имеете в виду в папке 'concept' в древовидной структуре выше. – liv2hak

Смежные вопросы