🚀 Nuova versione beta disponibile! Feedback o problemi? Contattaci

Scope Variaibili in Python

Codegrind Team•Jul 22 2023

In Python, le variabili possono essere definite sia nell’ambito locale che in quello globale. L’ambito di una variabile definisce dove è accessibile e modificabile. Esploriamo le differenze tra l’ambito locale e globale e come gestire le variabili in entrambi gli ambiti.

Ambito Locale

Una variabile definita all’interno di una funzione è considerata locale a quella funzione. Questa variabile è accessibile solo all’interno della funzione stessa e non è visibile da altre parti del codice al di fuori di quella funzione.

Esempio di Variabile Locale:

def mia_funzione():
    variabile_locale = "Sono locale"
    print(variabile_locale)

mia_funzione()
# Stampa: "Sono locale"

# La seguente riga causerebbe un errore poiché variabile_locale non è definita qui
# print(variabile_locale)

Ambito Globale

Una variabile definita al di fuori di qualsiasi funzione è considerata globale e può essere accessibile da qualsiasi parte del codice, comprese le funzioni. Tuttavia, se desideri modificare una variabile globale all’interno di una funzione, dovrai utilizzare la parola chiave global per indicare che stai facendo riferimento alla variabile globale.

Esempio di Variabile Globale:

variabile_globale = "Sono globale"

def mia_funzione():
    global variabile_globale
    variabile_globale = "Modificato all'interno della funzione"

mia_funzione()
print(variabile_globale)
# Stampa: "Modificato all'interno della funzione"

Regole di PrioritĂ 

Quando si utilizzano variabili sia locali che globali con lo stesso nome, l’ambito locale avrà la priorità all’interno della funzione. Se non esiste una variabile locale con lo stesso nome, Python cercherà la variabile nel contesto globale.

Esempio di PrioritĂ  delle Variabili:

variabile_globale = "Sono globale"

def mia_funzione():
    variabile_locale = "Sono locale"
    print(variabile_locale)  # Stampa: "Sono locale"
    print(variabile_globale)  # Stampa: "Sono globale"

mia_funzione()

Conclusione

La comprensione dell’ambito locale e globale è fondamentale per scrivere codice Python efficace. Le variabili locali sono limitate al contesto della funzione in cui sono definite, mentre le variabili globali sono accessibili da tutto il codice. Ricorda di utilizzare la parola chiave global per modificare variabili globali all’interno di funzioni. Utilizza queste nozioni per creare codice chiaro e organizzato.