Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Impara Sfida: Argomenti Opzionali | Argomenti Posizionali e Opzionali
Tutorial sulle Funzioni in Python
Sezione 2. Capitolo 4
single

single

bookSfida: Argomenti Opzionali

Scorri per mostrare il menu

Ricorda che quando si definisce una funzione, è possibile rendere alcuni argomenti opzionali assegnando loro un valore predefinito. Se chi chiama la funzione non fornisce un valore, la funzione utilizza quello predefinito.

def add_user(name, age, role="user", status="active"):
    # Function body here
  • name e age sono obbligatori – devono sempre essere forniti;
  • role e status sono opzionali – se omessi, vengono utilizzati i valori predefiniti.

Ricorda che gli argomenti opzionali devono sempre essere posizionati dopo tutti gli argomenti obbligatori.

add_user("Alice", 28)           # role="user", status="active" by default
add_user("Bob", 25, role="admin", status="inactive")  # Overriding the defaults
12345678
def greet(name, greeting="Hello"): print(f"{greeting}, {name}!") # Using only the required argument greet("Alice") # Providing both arguments greet("Bob", greeting="Hi")
copy
Compito

Scorri per iniziare a programmare

Stai lavorando con un semplice sistema di gestione utenti. L'obiettivo è implementare una funzione add_user() che aggiunga nuovi utenti o aggiorni quelli esistenti in una lista globale chiamata users_db.

La users_db è una lista di dizionari. Ogni dizionario rappresenta un utente ed è strutturato così:

users_db = [
    {"name": "Alice", "age": 28, "role": "admin", "status": "active"}
]
  1. Definire una funzione add_user(name, age, role="user", status="active").
  2. Verificare la presenza di utenti esistenti: Scorrere i dizionari in users_db. Controllare se la chiave "name" in uno dei dizionari corrisponde all'argomento name passato alla funzione.
  3. Se l'utente esiste: * Aggiornare il dizionario esistente con i nuovi valori di age, role e status.
  • Restituire la stringa: "User {name} updated successfully!".
  1. Se l'utente non esiste (il ciclo termina senza trovare una corrispondenza):
  • Creare un nuovo dizionario che rappresenta l'utente con i valori forniti per name, age, role e status.
  • Aggiungere questo nuovo dizionario a users_db.
  • Restituire la stringa: "User {name} added successfully!".

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 2. Capitolo 4
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

some-alt