
La risorsa all’interno della funzione appartiene all’ambiente locale, non è visibile all’esterno
def funzione_1():
a=100
print(a) # 100
def funzione_2():
print(a) # ERRORE
funzione_1()
funzione_2()
print(a) # ERRORE
La risorsa globale è visibile all’interno della funzione (solo in lettura)
def funzione():
print(a) # 10
print(a+100) # 110
a=10
print(a) # 10
funzione()
print(a) # 10
La risorsa, utilizzata in scrittura, è locale e copre la risorsa globale con lo stesso nome
def funzione():
a=100
print(a) # 100
a=10
print(a) # 10
funzione()
print(a) # 10
La risorsa non è modificabile all’interno della funzione perché è stata utilizzata in lettura (quindi si riferisce a una risorsa globale)
def funzione():
print(a) # 10
a=100 # ERRORE
a=10
print(a) # 10
funzione()
Parametro

Osserva
- Alla chiamata della funzione il parametro a1 viene passato alla funzione.
- La funzione possiede un parametro formale a che riceve il valore del parametro attuale a1 (10)
- Il parametro a si comporta come una variabile locale (lettura/scrittura).
- Le modifiche al valore di a non influenzano il valore di a1.
def funzione(a):
print(a) # 10
a=100
print(a) # 100
a1=10
a2=20
print(a1, a2) # 10 20
funzione(a1)
print(a1, a2) # 10 20