1) Skapa en ordbok spelare med namn, level och hp. Öka level med 1 och skriv allt.
2) Skapa en telefonbok (dict) och låt användaren slå upp nummer på namn.
3) Poängtavla: håll ett dict med poäng för tre spelare, uppdatera en vald spelare.
person={"namn":"Ava","stad":"Uppsala"}nycklar=list(person.keys())# ["namn", "stad"]värden=list(person.values())# ["Ava", "Uppsala"]par=list(person.items())# [("namn","Ava"), ("stad","Uppsala")]person.update({"ålder":13})# lägg till/förändra flera nycklarålder=person.get("ålder",0)# 13, eller 0 om saknasperson.setdefault("husdjur","katt")# sätt om nyckeln saknasbort=person.pop("stad",None)# ta bort och få värdet (eller None)
Micro-övningar:
- Bygg upp en profil med setdefault och uppdatera fält med update.
- Gå igenom items() och skriv “nyckel: värde” på varje rad.
Hitta felen! (5 fel)
Koden ska uppdatera en poängtavla och skriva ut den. Rätta fem fel.
poäng={"Ava":3,"Noah":1}poäng["Mio"]=poäng["Mio"]+2poäng.update([("Eli",4)])ökning=input("Öka Ava med: ")poäng["Ava"]=poäng["Ava"]+ökningfornamn,pinpoäng:print(namn,"→",p)
poäng={"Ava":3,"Noah":1}# Fix 1: Hantera saknad nyckel när du uppdaterarpoäng["Mio"]=poäng.get("Mio",0)+2# Fix 2: update kan ta en dict direkt (renare)poäng.update({"Eli":4})# Fix 3: Omvandla inmatningen till intökning=int(input("Öka Ava med: "))# Fix 4: Blanda inte sträng och intpoäng["Ava"]=poäng["Ava"]+ökning# Fix 5: Iterera över .items() för att få både namn och poängfornamn,pinpoäng.items():print(namn,"→",p)