Как выполнить циклический импорт в пакетах python2?

#package #python-import #python-2.x #circular-dependency

#пакет #python-импорт #python-2.x #циклическая зависимость

Вопрос:

Я свел этот вопрос к следующему… В подкаталоге тест/ У меня есть три файла: foo.py, bar.py, И пустой __init__ .py

фу.py:

 from . import foo as f  x = 20  def bar(z) :  global x  x = z;  return f.foo()  

bar.py:

 from . import bar as b  def foo() :  return b.x  

В python3 я могу

 import test from test.foo import * from test.bar import * foo() bar(3)  

Но это не работает в python2. Похоже, круговой импорт-это проблема. Ни в одной из версий нет проблем, когда файлы не находятся в пакете (конечно, без from . части импорта).

Есть ли какой-то трюк, чтобы заставить его работать в python2?