1. Želvi dodaj lastnost (property) distance, ki vrne trenutno razdaljo od njene začetne pozicije. Lastnost je možno le brati, ne pa tudi spreminjati.

  2. Spremeni želvine atribute x, y in angle v _x, _y in _angle. Nato želvi dodaj lastnosti x, y in angle, ki jih bo mogoče brati in jih spreminjati. Shranjujejo se v _x, _y in _angle, obenem pa moraš poskrbeti, da se bo želva ob nastavljanju koordinat ali koda dejansko prestavila ali obrnila.


  1. (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 @logging in z njim dekoriraj metode forward, turn in fly tako, da bo v log shranjevali izvedene ukaze. (Ukazov backward, left in right ne logiramo, ker se tako ali tako prevedejo na one tri.)

  2. (težja) Namesto imen metod logiraj metode, npr. self.forward. Želvi dodaj metodi clear_log, ki pobriše log in repeat, ki izvede vse, kar je napisano v log.

Zadnja sprememba: ponedeljek, 4. april 2016, 14.24