Göm meny
Gäller för: VT20

Lektion 5

Övningar inför laboration 5.

Övning 1: Definiera klass, skapa instans

Skriv in nedanstående klassdefinition för klassen Contact i en fil. Lägg sedan till kod som skapar två instanser av klassen. Referera till instanserna med separata variabler, c1 och c2.

Övning 2: Instansvariabler

Lägg till rader i din kod som sätter värdet på instansvariabeln phone_num i c1 till "0701-111111" och phone_num i c2 till "0702-222222". Skriv sedan ut värdet på alla instansvariabler i c1 och sedan alla värdet på alla instansvariabler i c2.

Övning 3: Metoder

Lägg till en metod till klassen Contact med namnet append_to_name(string_to_append) som lägger till strängen string_to_append till instansvariabeln name i den egna instansen. Lägg sedan till kod i filen som

  1. Efter att instanserna c1 respektive c2 skapats ska strängen ", Efternamn" läggas till båda instansernas instansvariabel name. Använd metoden append_to_name(string_to_append).
  2. Skriver ut värdena på instansvariabeln name från både c1 och c2 (efter att suffixet lagts till).

Övning 4: Instanser i en lista

Lägg till kod som skapar en lista som refereras till med variabeln contact_list samt lägger in tre instanser av klassen Contact i den listan (hitta själv på namn och telefonnummer). Skriv sedan en loop som skriver ut (med print()) varje element i listan contact_list.

Utskrifterna av Contact-instanserna bör skrivas ut som något i stil med <__main__.Contact object at 0x10b9a31d0>.

Övning 5: Metoden __str__

Lägg till metoden __str__ enligt nedan till klassen Contact och kör sedan den existerande koden igen. Nu bör namn och telefonnummer skrivas ut istället. Varför?


Sidansvarig: Johan Falkenjack
Senast uppdaterad: 2021-01-18