Naloge: lastnosti (property) objektov
- Želvi dodaj lastnost (property) - distance, ki vrne trenutno razdaljo od njene začetne pozicije. Lastnost je možno le brati, ne pa tudi spreminjati.
- Spremeni želvine atribute - x,- yin- anglev- _x,- _yin- _angle. Nato želvi dodaj lastnosti- x,- yin- angle, ki jih bo mogoče brati in jih spreminjati. Shranjujejo se v- _x,- _yin- _angle, obenem pa moraš poskrbeti, da se bo želva ob nastavljanju koordinat ali koda dejansko prestavila ali obrnila.
- (nekoliko težja) Želvi dodaj atribut - log, ki bo seznam vseh ukazov, ki jih je izvršila želva. Ukazi bodo shranjeni v obliki parov z imenom ukaza in terko z argumenti, na primer- [("fly", (100, 150, 0)), ("forward", (30, )), ("turn", (90))]. Napiši dekorator- @loggingin z njim dekoriraj metode- forward,- turnin- flytako, da bo v- logshranjevali izvedene ukaze. (Ukazov- backward,- leftin- rightne logiramo, ker se tako ali tako prevedejo na one tri.)
- (težja) Namesto imen metod logiraj metode, npr. - self.forward. Želvi dodaj metodi- clear_log, ki pobriše- login- repeat, ki izvede vse, kar je napisano v- log.