Два модуля Python требуют содержимого друг друга -, может ли это работать?

У меня есть модуль веб-сервера Bottle со следующей строкой:

from foobar.formtools import auto_process_form_insert

И модуль foobar.formtoolsсодержит эту строку:

from foobar.webserver import redirect, redirect_back

Конечно, оба приводят к следующим ошибкам (соответственно):

ImportError: cannot import name auto_process_form_insert
ImportError: cannot import name redirect

Это просто факт, что в Python два модуля не могут импортировать друг друга, и все импорты модулей должны быть иерархическими по своей природе, или я делаю что-то не так? В качестве альтернативы, есть ли обходной путь, кроме размещения всех этих замечательных функций в новых модулях?

53
задан Hubro 27 July 2012 в 18:22
поделиться