LINUX.ORG.RU

В секонд объявить переменную и присвоить ей X

#first.py
import second

X = {}
second.A = X
second.print_A()
-----------------
#second.py

A=None

def print_A():
   global A
   print A

kosmonavt
()
Ответ на: комментарий от kosmonavt

В принципе это сработает только, если X не будет присвоено новое значение. Иначе нужно будет заново присваивать second.A X.

Лучше объявлять переменную в second.py и использовать ее из first.py.

kosmonavt
()
Ответ на: комментарий от kosmonavt

Добавлю еще, что если происходит локальная загрузка second,
то тогда нужно использовать третий модуль:

#first.py
import sheredmod

def first_func():
   import second
   second.print_X()

sheredmod.X=1
first_func()
sheredmod.X="Hello"
first_func()

#second.py
import sheredmod

def print_X():
   print sheredmod.X

#sheredmod.py

X=None

kosmonavt
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.