simple Frage zu einer graph klasse
Verfasst: Samstag 13. Dezember 2008, 21:36
Hallo liebe Freunde des Mondes!
Ich quäle mich und quäle mich. Bei mir ist es so, dass ich einen code und dessen Aufgabe am ehesten dann verstehe, wenn ich etwa eingebe und schaue, was das Programm macht und auswirft. Aber nun bin ich tatsächlich (durch mehrmaliges Fehlen in der Vorlesung )
an meine Grenzen gestoßen. Mir liegt folgende Klasse vor:
Sexy, nicht wahr?
Jedenfalls weiß ich nicht genau, in welcher Form ich im init-bereich (Zeile 5,6) eine Eingabe machen muss (ich hoffe, dass ich wenigstens mit meiner Idee, dort eine Eingabe unternehmen zu wollen, richtig liege) und wie ich eine Ausgabe erwirke... wenn es doch nur ein einfacher Print-befehl wäre!!!
Weiß jemand weiter?
Ich quäle mich und quäle mich. Bei mir ist es so, dass ich einen code und dessen Aufgabe am ehesten dann verstehe, wenn ich etwa eingebe und schaue, was das Programm macht und auswirft. Aber nun bin ich tatsächlich (durch mehrmaliges Fehlen in der Vorlesung )
an meine Grenzen gestoßen. Mir liegt folgende Klasse vor:
Code: Alles auswählen
import copy
from operator import itemgetter
class Graph:
def __init__(self):
self.knotenListe = []
self.kantenListe = []
def addvertex(self, v1):
if v1 not in self.knotenListe:
self.knotenListe.append(v1)
def addedge(self, v1, v2, c):
if not v1 == v2:
self.addvertex(v1)
self.addvertex(v2)
for i in self.kantenListe:
a1 = i[0][0]
a2 = i[0][1]
if a1 == v1 and a2 == v2:
self.kantenListe.remove(i)
self.kantenListe.append(((v1,v2),c))
def getvertices(self):
return copy.copy(self.knotenListe)
def getedges(self):
kanten = copy.copy(self.kantenListe)
return sorted(kanten, key=itemgetter(1))
def cost(self, v1, v2):
ret = None
for i in self.kantenListe:
a1 = i[0][0]
a2 = i[0][1]
if a1 == v1 and a2 == v2:
ret = i[1]
return ret
Jedenfalls weiß ich nicht genau, in welcher Form ich im init-bereich (Zeile 5,6) eine Eingabe machen muss (ich hoffe, dass ich wenigstens mit meiner Idee, dort eine Eingabe unternehmen zu wollen, richtig liege) und wie ich eine Ausgabe erwirke... wenn es doch nur ein einfacher Print-befehl wäre!!!
Weiß jemand weiter?