main.py:Глобальные переменные между различными модулями
from module import *
var=10
def func2():
print "func2:" ,var
def main():
global var
var=20
print "main - before", var
func2()
func1()
print "main - after", var
if __name__=='__main__':
main()
module.py
from main import *
def func1():
global var
print "func1:", var
Программа печатает:
главный - до: 20
func2: 20
func1: 10
главное - после того, как 20
'вар' является глобальной переменной. Я ожидаю, что в тот момент, когда я изменю значение var, он будет изменен везде, где появится переменная var. Единственное различие между func1 и func2 заключается в том, что func1 находится в другом модуле. Тем не менее, я не понимаю, почему значение «var» отличается от func1 и func2.
Если вы хотите глобальную переменную через модули HTTP: // stackoverflow.com/a/29702401/2141635 –
Если ваша архитектура или программный дизайн требуют круговых зависимостей betwee n модулей, попробуйте переосмыслить его. –