Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele Haaste: Valinnaiset Argumentit | Positionaaliset ja valinnaiset argumentit
Python-funktioiden Opas
Osio 2. Luku 4
single

single

Haaste: Valinnaiset Argumentit

Pyyhkäise näyttääksesi valikon

Muista, että kun määrittelet funktion, voit tehdä joistakin argumenteista valinnaisia antamalla niille oletusarvon. Jos kutsuja ei anna arvoa, funktio käyttää oletusarvoa.

def add_user(name, age, role='user', status='active'):
    # Function body here
  • name ja age ovat pakollisia – ne on aina annettava;
  • role ja status ovat valinnaisia – jos ne jätetään pois, käytetään oletusarvoja.

Muista, että valinnaiset argumentit on aina sijoitettava pakollisten argumenttien jälkeen.

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')
Tehtävä

Pyyhkäise aloittaaksesi koodauksen

Työskentelet yksinkertaisen käyttäjähallintajärjestelmän parissa. Tavoitteenasi on toteuttaa funktio add_user(), joka lisää uusia käyttäjiä tai päivittää olemassa olevia käyttäjiä globaalissa listassa nimeltä users_db.

users_db on lista sanakirjoja. Jokainen sanakirja edustaa käyttäjää ja näyttää tältä:

users_db = [
    {'name': 'Alice', 'age': 28, 'role': 'admin', 'status': 'active'}
]
  1. Määrittele funktio add_user(name, age, role='user', status='active').
  2. Tarkista olemassa olevat käyttäjät: Käy silmukassa läpi users_db-listan sanakirjat. Tarkista, vastaako jonkin sanakirjan 'name'-avain funktiolle annettua name-argumenttia.
  3. Jos käyttäjä on olemassa: * Päivitä hänen sanakirjaansa uusilla arvoilla age, role ja status.
  • Palauta merkkijono: 'User {name} updated successfully!'.
  1. Jos käyttäjää ei löydy (silmukka päättyy ilman osumaa):
  • Luo uusi sanakirja käyttäjälle annetuilla arvoilla name, age, role ja status.
    • Lisää tämä uusi sanakirja users_db-listaan.
  • Palauta merkkijono: 'User {name} added successfully!'.

Ratkaisu

Switch to desktopVaihda työpöytään todellista harjoitusta vartenJatka siitä, missä olet käyttämällä jotakin alla olevista vaihtoehdoista
Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 2. Luku 4
single

single

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme

some-alt