dabear Skrevet 20. august 2005 Del Skrevet 20. august 2005 Hei, for å teste om en key finnes i ei liste, bruker jeg dette: if 'key' in list Hvor list er ei liste. Skal jeg sjekke om flere keys er i list, bruker jeg: if 'key' or/and 'annenkey' in list Men hva viss jeg har to lister, hvor jeg ønsker å teste om én av keyene (og da ikke én spesiell) finnes i den andre lista, hvordan skal jeg gjøre det da? Hittil har jeg brukt en loop, finnes det bedre metoder? altså er det noe sånt jeg er ute etter: if onOfTheKeys(['hey','hallo', 'bonsoir']) in list: noe() else: noeSnnet() Lenke til kommentar
A_N_K Skrevet 20. august 2005 Del Skrevet 20. august 2005 Du kan bruke 'set' istedenfor liste, siden denne datatypen har naturlig støtte for det du spør om. Dvs. at du vil finne ut om to sett (med nøkler) har noe til felles: if set1.intersection(set2): print "Hurra" I dette eksempelet inneholder set1 nøkler som du vil se om finnes i set2, det som returneres er faktisk et nytt sett med snittet mellom de to. Når man tester et 'set'-objekt i en if-setning vil det returnere True om lengden er større enn 0 og False ellers. Lenke til kommentar
dabear Skrevet 21. august 2005 Forfatter Del Skrevet 21. august 2005 (endret) Du kan bruke 'set' istedenfor liste, siden denne datatypen har naturlig støtte for det du spør om. Dvs. at du vil finne ut om to sett (med nøkler) har noe til felles: if set1.intersection(set2): print "Hurra" I dette eksempelet inneholder set1 nøkler som du vil se om finnes i set2, det som returneres er faktisk et nytt sett med snittet mellom de to. Når man tester et 'set'-objekt i en if-setning vil det returnere True om lengden er større enn 0 og False ellers. aha, det var genialt >>> set1 = set(['nei', 'no', 'No', 'Nei', 'n', 'N']) >>> set2 = set(['nei']) >>> set1.intersection(set2) set(['n']) >>> if(set1.intersection(set2)): print 'true' ... true Endret 21. august 2005 av dabear Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå