x=7 def f(): x=2 f(); print x # 7 def g(): global x; x=2 g(); print x # 2 --------------------------------------- u=[8] def f(): u[0]=5 f(); print u # [5] --------------------------------------- u=[8] def aumenta (u): u[0]=u[0]+1 aumenta(u); print u # [9] --------------------------------------- import mat x=7 def f (): mat.x+=1 f(); print x # 8 --------------------------------------- x=7 def f (): sys.modules[__name__].x+=1 f(); print x # 8 --------------------------------------- globals()['x']=33 print x # 33 --------------------------------------- x=33 globals()['x']=33 --------------------------------------- x=7 def f (u): print globals() print '------------' print locals() x=3; a=4 f(0) --------------------------------------- {'f': , '__builtins__': , '__file__': './alfa', 'x': 7, '__name__': '__main__', '__doc__': None} ------------ {'u': 0} --------------------------------------- x=7 def f (u): x=3; a=4 print locals() x=100 f(0) # {'a': 4, 'x': 3, 'u': 0} --------------------------------------- def varauto (a): for x in a.split(): globals()[x]=x varauto('Maria Vera Carla') print Maria # Maria --------------------------------------- pila=[] # Aggiunge gli argomenti alla pila. def poni (*v): pila.extend(v) # Toglie gli ultimi k elementi # dalla pila. Per k=1 restituisce # l'ultimo elemento della pila, # altrimenti la lista degli ultimi # k elementi. def togli (k=1): if k==1: return pila.pop() v=[] for i in xrange(k): v.append(pila.pop()) v.reverse(); return v # Togli gli ultimi due elementi dalla # pila e aggiunge alla pila la # loro somma. def add (): a,b=togli(2); pila.append(a+b) --------------------------------------- import pila pila.poni(4,3,5,2,10) print pila.pila # [4, 3, 5, 2, 10] print pila.togli() # 10 print pila.pila # [4, 3, 5, 2] pila.add() print pila.pila # [4, 3, 7]