Seksjon 2. Kapittel 4
single
Utfordring: Valgfrie Argumenter
Sveip for å vise menyen
Husk at når du definerer en funksjon, kan du gjøre noen argumenter valgfrie ved å tildele dem en standardverdi. Hvis den som kaller funksjonen ikke oppgir en verdi, brukes standardverdien.
def add_user(name, age, role="user", status="active"):
# Function body here
nameogageer påkrevd – må alltid oppgis;roleogstatuser valgfrie – hvis de utelates, brukes standardverdiene.
Husk at valgfrie argumenter alltid må komme etter alle påkrevde argumenter.
add_user("Alice", 28) # role="user", status="active" by default
add_user("Bob", 25, role="admin", status="inactive") # Overriding the defaults
12345678def greet(name, greeting="Hello"): print(f"{greeting}, {name}!") # Using only the required argument greet("Alice") # Providing both arguments greet("Bob", greeting="Hi")
Oppgave
Sveip for å begynne å kode
Du arbeider med et enkelt brukerstyringssystem. Målet ditt er å implementere en funksjon add_user() som legger til nye brukere eller oppdaterer eksisterende i en global liste kalt users_db.
users_db er en liste med ordbøker. Hver ordbok representerer en bruker og ser slik ut:
users_db = [
{"name": "Alice", "age": 28, "role": "admin", "status": "active"}
]
- Definer en funksjon
add_user(name, age, role="user", status="active"). - Sjekk etter eksisterende brukere: Gå gjennom ordbøkene i
users_db. Sjekk om nøkkelen"name"i noen ordbok samsvarer med argumentetnamesom sendes til funksjonen. - Hvis brukeren finnes: * Oppdater den eksisterende ordboken med nye verdier for
age,roleogstatus.
- Returner strengen:
"User {name} updated successfully!".
- Hvis brukeren ikke finnes (loopen fullføres uten treff):
- Opprett en ny ordbok som representerer brukeren med de oppgitte verdiene for
name,age,roleogstatus. - Legg denne nye ordboken til i
users_db. - Returner strengen:
"User {name} added successfully!".
Løsning
Alt var klart?
Takk for tilbakemeldingene dine!
Seksjon 2. Kapittel 4
single
Spør AI
Spør AI
Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår