Ben tornato.
Proviamo a rispondere ad alcune domande che potresti avere, ad esempio, per quanto riguarda i parametri?
Se faccio il parametro, diciamo essere qui, qual è questo parametro quando uso B in questo modo?
Quindi diciamo stampa.
B e qui dentro, farò confusione con, diciamo, il numero trecento se eseguo questo.
Questo funziona.
E questo perché be il parametro fa parte dell'ambito locale, cioè fa parte di questo.
Quindi i parametri sono considerati variabili locali.
Siamo in grado di usarlo all'interno della funzione, ma possiamo usarlo al di fuori di quelle funzioni.
Tecnicamente, quando definiamo la funzione, facciamo sapere all'interprete, ehi, B sarà una variabile
locale.
OK, che ne dici di questo?
E se avessimo questo, eh?
Ma voglio assicurarmi che all'interno della mia funzione mi riferisco effettivamente alla A globale, c'è
un modo per usare semplicemente questo valore senza creare una nuova variabile?
Bene, usiamo un esempio migliore per questo.
Diciamo che volevo creare un contatore.
Quindi avremo totale uguale a zero.
E poi qui dentro.
Sto per dire definire il conteggio.
E questa funzione dirà totale.
Più è uguale a uno.
Quindi aggiungeremo ogni singola volta che aggiungiamo il conteggio, incrementerà zero di uno e poi uno
per uno, e così via.
Quindi restituiremo il totale alla fine di questo.
Ok, quindi se corro qui, stampa.
Contare.
Vediamo cosa succede.
Vado a correre.
E ottengo un'altra variabile locale a cui si fa riferimento prima dell'assegnazione, e questo perché, beh, Conte non conosce
il totale.
Stai cercando di utilizzare il totale, ma non abbiamo ancora assegnato nulla.
Ma vogliamo che il totale dal mondo esterno venga eseguito, perché se lo faccio, il totale è uguale a zero qui e
io eseguo il conteggio.
È fantastico, ne ricevo uno, ma cosa succede se volessi eseguire il conteggio più volte?
E se volessi eseguire il conteggio?
Diciamo tre volte in modo che il conteggio totale sia tre.
Quindi stampiamo l'ultimo qui.
E clicco su Esegui.
Ne ottengo ancora uno perché ogni volta che eseguiamo la funzione, azzeriamo il totale.
Non è molto utile, vero?
Quindi un modo per risolvere questo problema è usare quella che chiamiamo la parola chiave globale in Python e globale dice usa il
totale globale se esiste qui, in modo che invece di dover creare una nuova variabile, posso usare il
totale della variabile globale.
Controllalo.
Bene, ottengo una sintassi non valida, e questo perché dobbiamo prima dire che il totale globale verrà utilizzato
qui e poi possiamo dire che totale più è uguale a uno se eseguo questo.
Uno sguardo a questo, abbiamo un contatore appropriato, quindi globale è un modo per noi di accedere a questa variabile globale.
Tuttavia, sostengo che questo in realtà non è un buon modo di fare le cose perché può diventare davvero
confuso quando inizi ad aggiungere Global e tutti questi diversi universi accedono alle variabili dell'altro, un modo
migliore per farlo è qualcosa chiamato iniezione di dipendenza, e questa ne è una versione semplificata.
Ma l'idea è che invece di accedere a variabili al di fuori della funzione come questa, che può diventare davvero, davvero complicata
man mano che i file diventano sempre più grandi, è da fare.
Invece questo.
Totale.
In questo modo, creiamo un parametro e poi lo passiamo.
O litigare qui.
Ma come puoi vedere, è ancora uno perché quando stampiamo il terzo totale, beh, questo non cambia
mai.
Questo è uno zero globale.
Quindi, invece, possiamo fare qualcosa del genere, possiamo dire conteggio totale, di cui conteremo di nuovo.
E poi contare di nuovo.
Se eseguo questo.
Ne ho tre e so cosa stai pensando, questo è completamente folle, sembra confuso.
Guarda tutte queste parentesi.
Ma lascia che ti mostri cosa abbiamo effettivamente fatto.
Siamo in grado di staccare la dipendenza o l'effetto che questo non può avere sull'ambito globale esterno e concentrarci
invece solo sulla sua salute.
Tutto quello che dovevamo fare era dire, ehi, voglio che tu dia un conteggio con un totale di zero.
E poi, questo valuterà due uno.
E poi contiamo un totale di uno più uno sarà uguale a due e poi contiamo due più uno
sarà uguale a tre.
In questo modo, siamo ancora in grado di fare il nostro conteggio senza dover usare quella parola chiave globale, che direi che
è più carina.
Intendiamoci, se è la prima volta che lo vedi, può diventare un po' complicato.
Ma almeno in questo modo, sai che ci sono diversi modi di fare le cose.
Un'altra parola che voglio mostrarti è qualcosa chiamato non locale.
Ma per quello, facciamo una pausa e ci vediamo nel prossimo video.