Область видимости
# -*- encoding: utf-8 -*-
"""
Доступ к глобальным переменным
"""
X = 88 # global X
def func():
global X
X = 99 # global X: outside def
func()
print X # prints 99
# -*- encoding: utf-8 -*-
"""
Списки глобальных и локальных переменных
"""
def foo(arg):
x = 1
print locals()
locals()["x"] = 2
print "x=",x
z = 7
print "z=",z
foo(3)
globals()["z"] = 8
print "z=",z
# -*- encoding: utf-8 -*-
"""
Скрытие имён переменных
"""
X = 88 # global X
def func():
X = 99 # local X: hides global
func()
print X # prints 88: unchanged
# -*- encoding: utf-8 -*-
"""
Глобальные и локальные переменные
"""
# global scope
X = 99 # X and func assigned in module: global
def func(Y): # Y and Z assigned in function: locals
# local scope
Z = X + Y # X is not assigned, so it's a global
return Z
func(1) # func in module: result=100