РЕДАКТИРОВАТЬ ноябрь 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» модуль.