Seite 2 von 2

Re: Dictionary mit Platzhaltern durchsuchen

Verfasst: Samstag 22. Januar 2011, 23:04
von mutetella
Wobei omnidan ja nach einer Lösung gesucht hat, die sowohl den Schlüssel wie auch den Schlüsselwert durchsucht.
EyDu's und Deine modifizierte Lösung durchsuchen aber nur den Schlüsselnamen.

Es müsste also

Code: Alles auswählen

def find(name):
     for key in telefonbuch:
         if name in key or name in telefonbuch[key]:
             return key, telefonbuch[key]
lauten.

Allerdings bin ich mir nicht sicher, ob diese Lösung dann noch performanter ist...

mutetella

Re: Dictionary mit Platzhaltern durchsuchen

Verfasst: Sonntag 23. Januar 2011, 11:25
von sma
Effizienter ist (bei Python 2.x wäre iteritems() noch besser):

Code: Alles auswählen

def find(name):
     for key, value in telefonbuch.items():
         if name in key or name in value:
             return key, value
Stefan

Re: Dictionary mit Platzhaltern durchsuchen

Verfasst: Sonntag 23. Januar 2011, 11:34
von mutetella
Wo liegt eigentlich der Unterschied zwischen

Python2.dict.items() und Python3.dict.items()
bzw.
Python2.dict.iteritems() und Python3.dict.iteritems()

:?:

In diesem Thread wurde hier und da darauf verwiesen, dass man mit Python 2 das 'eine', unter Python 3 aber lieber das 'andere' verwenden sollte... Warum?

mutetella


EDIT: Ok, hab's gerade selbst nachgelesen... sorry für meine Ungeduld.