Я написал модуль (файл my_mod.pyфайл находится в папке my_module). В настоящее время я работаю в файле, cool_script.pyкоторый находится в папке cur_proj. Я открыл папку в PyCharm, используя File - open (и я предполагаю, следовательно, это проект PyCharm).
В ProjectView (CMD-7) я вижу свой проект cur_proj(красным) и в разделе «Внешние библиотеки» my_module. В cool_script.py я могу написать
from my_module import my_mod as mm
и PyCharm даже делает предложение для my_mod. Все идет нормально.
Тем не менее, когда я пытаюсь запустить cool_script.py, PyCharm сообщает мне «Нет модуля с именем my_module»
Это кажется странным для меня, потому что
А) в терминале (OS 10.10.2), в python, я могу импортировать модуль без проблем - в PYTHONPATH есть соответствующая запись в .bashrc
B) в PyCharm - Настройки - Project cur_proj - Project Interpreter - CogWheel рядом с интерпретатором python - подробнее - показать пути для иконки выбранного переводчика, пути из PYTHONPATH действительно появляются (как я думаю, они должны)
Следовательно, почему я получаю сообщение об ошибке при попытке запустить cool_script.py? - Чего мне не хватает?
Ноты:
- Я не объявляю другую / специальную версию Python в верхней части cool_script.py
- Я убедился , что путь к
my_moduleправильно - Я помещаю
__init__.pyфайлы (пустые файлы) как в, такmy_moduleи вcur_proj - Я не пользуюсь
virtualenv
Приложение 2015-Фев-25
Когда я захожу в PyCharm для запуска - Редактировать конфигурации, для моего текущего проекта есть две опции, которые выбираются с галочкой: « Добавить корни содержимого в PYTHONPATH » и « Добавить корни источника в PYTHONPATH ». Когда я снял оба флажка, я могу загрузить свой модуль.
Так что это работает сейчас - но почему ?
Возникли дополнительные вопросы:
- Что такое «корни контента» и что такое «корни источников»? И почему добавление чего-либо к PYTHONPATH делает его каким-то образом ломающимся?
- я должен снять все эти опции все время (также и в настройках по умолчанию, а не только в конкретных конфигурациях проекта (левая панель диалога Run / Debug Configurations)?
Enable Django Supportв настройках Languages & Frameworks -> Djangoв Pro версии PyCharm. Он открывал консоль django, что вызывало проблемы с импортом.

from foldername.mymodule import mymethod. Еще одна вещь, которую я должен был сделать, это добавить пустую папку _init .py во все папки, которые вы будете использовать для доступа к вашему модулю, так что в случаеfrom parentfolder.childfolder.mymodule ...необходимости вам понадобится init в двух папках. В зависимости от того, где расположены папки относительно друг друга, вам может понадобиться пакет верхнего уровня,sys.pathкак описано в этом ответе