Variable punkt in Funktion definieren

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
uli67
User
Beiträge: 1
Registriert: Samstag 28. November 2020, 12:47

Hallo,

ich habe da eine Verständnisfrage und ein Problem mit der definition einer Variablen.

Das ist die Aufgabenstellung:

eine Funktion gehe_wenn_nah(punkt), die einen Punkt übergeben bekommt und prüft, ob dieser weniger als 100 Schritte von ihrem aktuellen Standort entfernt ist. Wenn ja, geht sie zu diesem Punkt, wenn nicht, geht sie zu dem Punkt (0, 0).

Abschließend bekommt sie eine Liste mit Punkten namens punkte_liste aus der Bibliothek daten übergeben und soll die Funktion gehe_wenn_nah(punkt) nacheinander für jeden Wert in dieser Liste aufrufen.

Tipp: Die Entfernung zu einem Punkt punkt kann man mit der Funktion distance(punkt) aus der Turtle-Bibliothek ermitteln. Zudem kann die Turtle-Funktion goto() auch direkt einen Punkt übergeben bekommen, also bspw. goto(punkt).

Tipp 2: Punkte werden in Python mit runden Klammern geschrieben, also zum Beispiel mittelpunkt = (0, 0) für die Mitte oder rechts_oben = (200, 200). Du kannst danach also z.B. gehe_wenn_nah(mittelpunkt) aufrufen.

So habe ich versucht sie zu lösen:

Code: Alles auswählen

from daten import punkte_liste
from turtle import distance 
from turtle import goto



def gehe_wenn_nah_(punkt):
    punkt = satz.split("?")
    neue_liste = satz.split("?") 
    
    
    
if distance(punkt) < 100:
    goto(punkt)
else:
    goto(0, 0)
        


for punkt in punkte_liste:
    punkt = gehe_wenn_nah(punkt)
    
print(neue_liste)
    
    
        
in der Zeile mit der If Abfrage meckert der Interpreter dass die Vriable punkt nicht definiert ist.

So wie ich die Aufgabe verstehe ist der Standort von dem aus die Entdernung mittels distance(punkt) ermittelt wird nicht bekannt und die Liste punkte wird erst nach der Ermittlung des Abstandes übergeben oder bin ich da auf den falschen Weg?

Was ich nicht weiss ist wie ich diese Varible punkt definieren soll / muss

Könnte mir da jemand helfen ich bin aufgrund vieler Kommentae aus dem openhpi
total verwirrt und bitte nennt mir die Zeilennummer -das macht es für mich einfacher als ein da fehlt oder das muss eingerückt werden die bei openhpi bekommen das leider nicht gebacken .
DANKE

Uli

nur dummer Linux Admin
Benutzeravatar
__blackjack__
User
Beiträge: 14053
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

@uli67: Du bist ja offenbar überrascht das diese Meldung kommt, also verrate doch mal was Du denkst welchen Wert `punkt` an der Stelle haben sollte, und warum?

Ansonsten würde ich noch fragen was denn bitte `satz` ist und wo das definiert ist und was das da in dem Programm zu suchen hat.

Und auch Einrückung wäre ein Stichwort. Das sind Grundlagen. Die erkläre ich persönlich nicht, denn das steht in jedem Grundlagentutorial — das kann ich mit Sicherheit nicht besser erklären als es dort schon überall steht. Falls Deine Kursunterlagen nichts taugen: Es gibt ein Tutorial in der Python-Dokumentation.
“Vir, intelligence has nothing to do with politics!” — Londo Mollari
Antworten