В Python 2.7, в зависимости от того, как я импортирую модуль, глобальные переменные могут стать недоступными.Python 2.7: глобальный с импортированными модулями
У меня есть файл, который содержит test.py следующее:
x = None
def f():
global x
x = "hello"
print x
я получаю следующее ожидаемое поведение:
>>> import test
>>> print test.x
None
>>> test.f()
hello
>>> print test.x
hello
Но теперь, если я делать некрасивый «импорта *» вместо этого, Получаю следующее:
>>> from test import *
>>> print x
None
>>> f()
>>> print x
None
Так что переменная x больше не доступна .. Любые подсказки?
спасибо, у
небольшая ошибка: после 'из test import *' вызов 'f()' prints 'hello' –