ИЗМЕНИТЬ ноябрь 2014 г. (3 года спустя):
Python 2.6 и 3.x поддерживает правильный относительный импорт, при котором вы можете избежать любых взломов. С помощью этого метода вы знаете, что получаете относительный импорт, а не абсолютный . '..' означает, что нужно перейти в каталог выше меня:
from ..Common import Common
В качестве предостережения, это будет работать только в том случае, если вы запустите свой python как модуль извне пакета. Например:
python -m Proj
Оригинальный хакерский способ
Этот метод все еще часто используется в некоторых ситуациях, когда вы фактически никогда не «устанавливаете» свой пакет. Например, он популярен среди пользователей Django.
Вы можете добавить Common / в свой sys.path (список путей, которые Python просматривает для импорта):
import sys, os
sys.path.append(os.path.join(os.path.dirname(__file__), '..', 'Common'))
import Common
os.path.dirname(__file__)
просто дает вам каталог, в котором находится ваш текущий файл python, а затем мы переходим к каталогу «Common /» и импортируем модуль «Common».