Amministratori posizionali vs. parole chiave

Mag 16, 2021
admin

Articolo correlato:

  • Funzioni
  • Passare una funzione come argomento
  • Asterischi in Python

Transcript:

Parliamo dei due tipi di argomenti che si possono usare quando si chiama una funzione: argomenti posizionali e argomenti denominati (alias argomenti di parole chiave).k.a. keyword arguments).

Altri posizionali

Quando chiamate la funzione incorporata print, potete passare qualsiasi numero di argomenti in modo posizionale.Qui stiamo passando quattro argomenti posizionali:

>>> print(2, 1, 3, 4)2 1 3 4

Chiamiamo questi argomenti posizionali perché la loro posizione è importante.L’ordine di questi argomenti è significativo: il primo argomento viene stampato per primo; l’ultimo viene stampato per ultimo.

Amministratori di parole chiave (anche chiamati argomenti)

La funzione print accetta anche alcuni argomenti come argomenti di parole chiave.

La funzione print accetta un argomento opzionale sep (che per default è uno spazio).

>>> print(2, 1, 3, 4, sep=' ')2 1 3 4>>> print(2, 1, 3, 4)2 1 3 4>>> print(2, 1, 3, 4, sep='-')2-1-3-4>>> print(2, 1, 3, 4, sep=', ')2, 1, 3, 4

Quell’argomento sep definisce il separatore che dovrebbe essere stampato tra ciascuno degli argomenti posizionali dati a print.

C’è anche un argomento opzionale end per parole chiave.L’argomento end di default è un carattere newline:

>>> print(2, 1, 3, 4, sep=', ', end='\n')2, 1, 3, 4

Ma possiamo mettere dei punti esclamativi nell’argomento end (prima di un newline) per stampare i punti esclamativi alla fine:

>>> print(2, 1, 3, 4, sep=', ', end='!!\n')2, 1, 3, 4!!

L’ordine degli argomenti delle parole chiave non ha importanza

L’ordine degli argomenti sep e end della funzione print non ha effettivamente importanza.

>>> print(2, 1, 3, 4, end='!!\n', sep=', ')2, 1, 3, 4!!

L’ordine non ha importanza con questi perché non sono argomenti posizionali: sono argomenti nominati.

Gli argomenti posizionali hanno delle virgole tra i loro valori.

>>> print(2, 1, 3, 4)2 1 3 4

Gli argomenti a parole chiave (anche detti

>>> print(2, 1, 3, 4, sep=',', end='!\n')2,1,3,4!

Gli argomenti parola chiave (anche detti argomenti con nome) hanno un nome e un segno di uguale oltre a quei valori e alle virgole.

>>> print(2, 1, 3, 4, sep=',', end='!\n')2,1,3,4!

Gli argomenti parola chiave devono venire dopo qualsiasi argomento posizionale.Oltre a ciò, la posizione degli argomenti parola chiave non ha alcuna importanza: è il nome che conta, non la posizione.

Utilizzare argomenti parola chiave invece di argomenti posizionali

Gli argomenti parola chiave non sono utili solo per funzioni che accettano qualsiasi numero di argomenti posizionali (come print).Potete passare argomenti di parole chiave a quasi tutte le funzioni in Python.

Per esempio, la funzione built-in sum accetta un primo argomento:

>>> sum()10

Ma accetta anche un secondo argomento, che di default è zero:

>>> sum(, 0)10

Se cambiamo questo secondo argomento in 1, vedremo che questo è il valore iniziale per la somma restituita:

>>> sum(, 1)11

Potrei piuttosto vedere questa funzione chiamata così:

>>> sum(, start=1)11

Passiamo un argomento posizionale e un argomento parola chiave.

Questo start=1 funziona con sum perché start è il nome di quell’argomento.Nella documentazione della funzione sum si dice che il secondo argomento che si chiama start:

>>> help(sum)Help on built-in function sum in module builtins:sum(iterable, /, start=0) Return the sum of a 'start' value (default: 0) plus an iterable of numbers When the iterable is empty, return the start value. This function is intended specifically for use with numeric values and may reject non-numeric types.

Quindi quando si lavora con argomenti nominati (cioè argomenti a parole chiave) il nome dell’argomento è importante! Mentre quando si lavora con argomenti posizionali, è la posizione che è significativa.

Sommario

Quando chiamiamo una funzione in Python, possiamo passare due diversi tipi di argomenti:

  1. argomenti posizionali
  2. argomenti con nome (detti anche

Gli argomenti con nome possono a volte rendere il vostro codice un po’ più descrittivo perché avete dato un nome ad un oggetto il cui uso potrebbe altrimenti non essere chiaro semplicemente dalla sua posizione in una chiamata di funzione.

Vuoi vedere altri argomenti Python spiegati?

Ciao amichevole visitatore web! 👋

Questa pagina fa parte di Python Morsels, un servizio online di costruzione di abilità Python.

Il modo migliore per imparare è fare. Nel caso di Python questo significa scrivere codice Python. Se vuoi migliorare le tue abilità in Python ogni settimana, prova Python Morsels inserendo la tua email qui sotto per creare un account.

Le pagine degli argomenti di Python Morsels sono gratuite e anche il primo mese di esercizi è gratuito. Non hai bisogno di inserire i dettagli del pagamento per iscriverti.

Puoi trovare le spiegazioni di molti altri argomenti di Python iscrivendoti qui sotto.

Scrivendoti, accetti l’informativa sulla privacy.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.