Sie können im internen verwenden map()
die festlegen x
und y
Variablen.
def bla(self,x,y) :
for key in self.DataBase :
x,y = map(float, self.DataBase[key])
if x == dept and y == year:
return key
Wenn Sie items()
lieber mit, Sie können auch folgendes tun (gleichermaßen gültig):
def bla(self,x,y):
for key, val in self.DataBase.items():
x, y = map(float, val)
if x == dept and y == year:
return key
Hier ist noch eine weitere Möglichkeit, es zu tun, ohne map()
, das gibt Ihnen den Vorteil, das Auspacken Tupel, während über die dict Iterieren:
def bla(self,x,y):
for key, (x, y) in self.DataBase.items():
if x == dept and y == year:
return key
Sie können auch die oben als so schreiben, Liste Verständnis mit, obwohl ich das sagen würde, oben ist bevorzugt:
def bla(self,x,y):
found = {key for key, (x, y) in self.DataBase.items() if x==dept and y==year}
found = ''.join(num) #joins set into string
return found
Die folgende alle Arbeiten für Python 3, die ich nehme an, was Sie da eine Ihrer Tags wollen, Python 3.x
kann u ur Eingangsdaten – Hackaholic
ppl = Course zeigen (123, "Grundsätze der Programmiersprachen") os = Kurs (133, 'Betriebssysteme') db = DB) ( db.setCourse (ppl, 'SE', 2, 1) db.setKurs (os, 'SE' , 3, 1) –
Sie sollten Code in die Frage einfügen ('edit' verwenden), da es in Kommentaren nicht gut angezeigt wird. –