In Python, gli ambiti delle variabili all'interno delle istruzioni if sono visibili al di fuori dell'istruzione if? (proveniente da uno sfondo Java, quindi trova un po 'strano)Ambito variabile Python nelle istruzioni if
Nel seguente caso, il nome viene prima definito all'interno del blocco if, ma la variabile è visibile anche al di fuori del blocco if. Mi aspettavo che si verificasse un errore, ma "joe" viene stampato.
if 1==1:
name = 'joe'
print(name)
@Owen, eh? riferimento? –
Oh ... mi dispiace .. mi sono sbagliato su questo. – Owen
@Owen stai pensando alla parola chiave 'nonlocal' che presumo, che non definisce un ambito, ma aggiunge una sintassi per riferirsi a un ambito che include ma non globale. – agf