Относительный импорт использует ведущие точки. Одна ведущая точка означает текущий пакет, в котором находится модуль, производящий импорт. Две точки означают один уровень выше. Три точки - это два уровня вверх и т. д.
Например, учитывая следующую компоновку пакета:
package/ __init__.py subpackage1/ __init__.py moduleX.py moduleY.py subpackage2/ __init__.py moduleZ.py moduleA.py
Возможен следующий относительный импорт пакетов:
from .moduleY import spam from .moduleY import spam as ham from . import moduleY from ..subpackage1 import moduleY from ..subpackage2.moduleZ import eggs from ..moduleA import foo
Абсолютный импорт может использовать синтаксис import <>
или from <> import <>
, но относительный импорт может использовать только вторую форму from <> import <>
.