Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Impara Argomenti Arbitrari | Argomenti Arbitrari
Tutorial Sulle Funzioni in Python

bookArgomenti Arbitrari

Hai già esplorato gli argomenti posizionali e opzionali. Ma cosa succede se una funzione ha molti argomenti o non li conosci tutti in anticipo? Puoi gestire questa situazione utilizzando argomenti arbitrari (argomenti a lunghezza variabile). Questi argomenti permettono a una funzione di accettare un numero qualsiasi di input, rendendola flessibile e adattabile.

Note
Nota

Ricorda che ogni argomento può essere una struttura dati, come una lista o un dizionario. Puoi passare un numero arbitrario di tali strutture utilizzando argomenti arbitrari.

In Python, puoi definire argomenti arbitrari come un singolo argomento posizionale anteponendo un asterisco * al nome dell'argomento. Ecco un esempio:

12345678
# Define function with arbitrary arguments named values def calculate_sum(*values): return sum(values) # Test the function using different number of arguments print(calculate_sum(1, 2, 3)) print(calculate_sum(1, 2, 3, 4)) print(calculate_sum(1, 2, 3, 4, 5))
copy

Nel codice sopra, il simbolo * indica che la variabile values può contenere più argomenti arbitrari, che vengono trattati come una tupla. La funzione incorporata sum() viene quindi utilizzata per calcolare il totale. Il risultato è corretto per tutti gli esempi e non è necessario specificare esplicitamente il numero di argomenti. Nota: utilizzare questo argomento per nome senza * all'interno del corpo della funzione.

Note
Nota

Per definire una tupla di argomenti arbitrari, è sufficiente utilizzare * prima del nome dell'argomento. Tuttavia, si consiglia di adottare la costruzione *args. Questo migliora l'interpretabilità e la leggibilità del codice.

123456789101112131415161718
def example_function(*args): # Print the type of args print(f'Type of args: {type(args)}') # Print the whole tuple print(f'Args tuple: {args}') # Iterate over the tuple for arg in args: print(arg) # Call the function without any arguments print("Call without arguments:") example_function() # Call the function with one argument print("\nCall with one argument:") example_function(1) # Call the function with multiple arguments print("\nCall with multiple arguments:") example_function(1, 2, 3, 'hello', [4, 5, 6])
copy

Come si può osservare dai risultati:

  • Quando la funzione viene chiamata senza argomenti, args sarà una tupla vuota ();
  • Quando la funzione viene chiamata con un argomento, args sarà una tupla con un solo elemento (1,);
  • Quando la funzione viene chiamata con più argomenti, tutti vengono memorizzati nella tupla, ad esempio (1, 2, 3, 'hello', [4, 5, 6]).

Con *args, è possibile lavorare con i valori come con qualsiasi altra tupla in Python.

Compito

Swipe to start coding

Implementare una funzione calculate_total che calcola il prezzo totale degli articoli in un carrello, applicando sconti in base all'importo totale.

  1. Utilizzare argomenti arbitrari denominati prices nella funzione calculate_total.
  2. Se nessun argomento viene fornito, restituire "Your cart is empty.".
  3. Applicare uno sconto del 20% se il totale è $200 o superiore.
  4. Applicare uno sconto del 10% se il totale è $100 o superiore.

Soluzione

Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 3. Capitolo 1
single

single

Chieda ad AI

expand

Chieda ad AI

ChatGPT

Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione

close

Awesome!

Completion rate improved to 4.17

bookArgomenti Arbitrari

Scorri per mostrare il menu

Hai già esplorato gli argomenti posizionali e opzionali. Ma cosa succede se una funzione ha molti argomenti o non li conosci tutti in anticipo? Puoi gestire questa situazione utilizzando argomenti arbitrari (argomenti a lunghezza variabile). Questi argomenti permettono a una funzione di accettare un numero qualsiasi di input, rendendola flessibile e adattabile.

Note
Nota

Ricorda che ogni argomento può essere una struttura dati, come una lista o un dizionario. Puoi passare un numero arbitrario di tali strutture utilizzando argomenti arbitrari.

In Python, puoi definire argomenti arbitrari come un singolo argomento posizionale anteponendo un asterisco * al nome dell'argomento. Ecco un esempio:

12345678
# Define function with arbitrary arguments named values def calculate_sum(*values): return sum(values) # Test the function using different number of arguments print(calculate_sum(1, 2, 3)) print(calculate_sum(1, 2, 3, 4)) print(calculate_sum(1, 2, 3, 4, 5))
copy

Nel codice sopra, il simbolo * indica che la variabile values può contenere più argomenti arbitrari, che vengono trattati come una tupla. La funzione incorporata sum() viene quindi utilizzata per calcolare il totale. Il risultato è corretto per tutti gli esempi e non è necessario specificare esplicitamente il numero di argomenti. Nota: utilizzare questo argomento per nome senza * all'interno del corpo della funzione.

Note
Nota

Per definire una tupla di argomenti arbitrari, è sufficiente utilizzare * prima del nome dell'argomento. Tuttavia, si consiglia di adottare la costruzione *args. Questo migliora l'interpretabilità e la leggibilità del codice.

123456789101112131415161718
def example_function(*args): # Print the type of args print(f'Type of args: {type(args)}') # Print the whole tuple print(f'Args tuple: {args}') # Iterate over the tuple for arg in args: print(arg) # Call the function without any arguments print("Call without arguments:") example_function() # Call the function with one argument print("\nCall with one argument:") example_function(1) # Call the function with multiple arguments print("\nCall with multiple arguments:") example_function(1, 2, 3, 'hello', [4, 5, 6])
copy

Come si può osservare dai risultati:

  • Quando la funzione viene chiamata senza argomenti, args sarà una tupla vuota ();
  • Quando la funzione viene chiamata con un argomento, args sarà una tupla con un solo elemento (1,);
  • Quando la funzione viene chiamata con più argomenti, tutti vengono memorizzati nella tupla, ad esempio (1, 2, 3, 'hello', [4, 5, 6]).

Con *args, è possibile lavorare con i valori come con qualsiasi altra tupla in Python.

Compito

Swipe to start coding

Implementare una funzione calculate_total che calcola il prezzo totale degli articoli in un carrello, applicando sconti in base all'importo totale.

  1. Utilizzare argomenti arbitrari denominati prices nella funzione calculate_total.
  2. Se nessun argomento viene fornito, restituire "Your cart is empty.".
  3. Applicare uno sconto del 20% se il totale è $200 o superiore.
  4. Applicare uno sconto del 10% se il totale è $100 o superiore.

Soluzione

Switch to desktopCambia al desktop per esercitarti nel mondo realeContinua da dove ti trovi utilizzando una delle opzioni seguenti
Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 3. Capitolo 1
single

single

some-alt