Exempel-1: Hitta ett enda element i en lista med ' i' operatör
Följande skript visar hur du enkelt kan söka efter något element i en lista med hjälp av ' i' operatör utan att använda någon slinga. En lista med blommanamn definieras i manuset och ett blommans namn kommer att tas som input från användaren för att söka i listan. Om sats används med 'i' operatören för att hitta inmatningsblommans namn i listan.
#!/usr/bin/env python3
# Definiera en lista med blommor
flowerList= ['reste sig', 'påsklilja', 'solros', 'vallmo', 'blåklocka']
# Ta namnet på blomman som du vill söka i listan
flowerName= inmatning('Ange ett blommans namn:')
# Sök efter elementet med 'in' -operatorn
omflowerName.lägre() iflowerList:
# Skriv ut framgångsmeddelande
skriva ut('%s finns i listan'%(flowerName))
annan:
# Utskrift hittades inte
skriva ut('%s finns inte i listan'%(flowerName))
Produktion:
Utgången visar Påsklilja finns i listan och Lilja finns inte i listan.
Exempel 2: Hitta ett element med hjälp av indexmetoden
Ett annat enkelt sätt att hitta ett visst element i en lista med hjälp av indexmetoden. Följande skript visar användningen av index() metod för att söka efter ett element i en lista. Denna metod returnerar en giltig indexposition om det specifika elementet finns i listan annars genererar det en ValueError om du vill lagra positionen i en variabel. försöket blocket kommer att skriva ut framgångsmeddelandet om index() metod returnerar ett giltigt positionsvärde baserat på sökvärdet. Det utom block kommer att skriva ut felmeddelandet om sökelementet inte finns i listan.
#!/usr/bin/env python3Prova:
# Definiera en lista med böcker
bok lista= ['Katten i hatten', 'Harold and the Purple Crayon',
'The Very Hungry Caterpillar', 'Godnatt måne', 'Harold and the Purple Crayon']
# Ta namnet på boken som du vill söka i listan
boknamn= inmatning('Ange ett boknamn:')
# Sök efter elementet med hjälp av indexmetod
sökpos= int(bok lista.index(boknamn))
# Skriv ut hittat meddelande
skriva ut('%s bok finns i listan'%(boknamn))
bortsett från(ValueError):
# Utskrift hittades inte
skriva ut('%s bok finns inte i listan'%(boknamn))
Produktion:
Utmatningen visar ' Godnatt måne' finns i listan och 'Kalle och chokladfabriken' finns inte i listan.
Exempel-3: Hitta flera index i en lista
Hur du kan hitta ett enda element i en lista visas i de två föregående exemplen. Följande skript visar hur du kan söka efter alla element i en lista i en annan lista. Tre listor används i detta skript. vald lista är huvudlistan där elementen i searchList kommer att sökas. foundList används här för att lagra de element som finns i vald lista efter sökning. Den första för loop används för att generera foundList och det andra för loop används för att iterera foundList och visa utmatningen.
#!/usr/bin/env python3# Definiera en lista med utvalda personer
vald lista= ['Sophia', 'Isabella', 'Olivia', 'Alexzendra', 'Söt']
# Definiera en lista med sökande person
searchList= ['Olivia', 'Chloe','Alexzendra']
# Definiera en tom lista
foundList= []
# Iterera varje element från den valda listan
förindex,sListai listad(vald lista):
# Matcha elementet med elementet i searchList
omsListaisearchList:
# Spara värdet i foundList om matchningen hittas
foundList.bifoga(vald lista[index])
# iterera söklistan
förtimmarisearchList:
# Kontrollera att värdet finns i foundList eller inte
omtimmarifoundList:
skriva ut('%s har valts. n'% timmar)
annan:
skriva ut('%s har inte valts. n'% timmar)
Produktion:
Följande utdata visas efter att ordet har körts.
Exempel-4: Hitta ett element med den anpassade funktionen
Om du vill hitta elementet flera gånger i en lista är det bättre att använda en anpassad sökmetod istället för att skriva ett sökskript flera gånger. Följande skript visar hur du kan hitta valfritt värde i en lista med hjälp av en anpassad funktion som heter findElement . Funktionen återkommer Sann om listan innehåller sökelementet annars returneras Falsk .
#!/usr/bin/env python3# Definiera en lista med mat
mat= ['Pizza', 'kaka', 'jordgubbe', 'choklad','kycklingstek','mango']
# Ta ett matnamn från användaren
Sök= inmatning('Skriv din favoritmat:')
# Definiera den anpassade funktionen för att hitta element i listan
deffindElement(namnlista,searchElement):
# Läs listan med loop
förvärdeinamnlista:
# Kontrollera att elementvärdet är lika med sökvärdet eller inte
omvärde==searchElement:
lämna tillbaka Sann
# Returnera falsk om ingen matchning hittades
lämna tillbaka Falsk
# Ring funktionen med listans namn och sökvärde
omfindElement(mat,Sök.lägre()):
skriva ut('%s finns'%Sök)
annan:
skriva ut('%s hittas inte'%Sök)
Produktion:
Följande utmatning visas för ingången 'Kaka' och 'Chokladkaka' .
Exempel-5: Hitta och räkna elementen i en lista baserat på längd
Följande skript visar hur du kan hitta och räkna antalet element i en lista baserat på elementets längd. Här heter listan personer är iterat med för slinga och kontrollera längden på varje element i listan. Räknarvärdet ökar om elementets längd är mer än eller lika med 7.
#!/usr/bin/env python3# Definiera en lista över personer
personer= ['Sophia', 'Isabella', 'Olivia', 'Alexzendra', 'Söt']
# Initiera räknaren
disken= 0
# Iterera listan med loop
förnamnipersoner:
# Kontrollera elementets längd
om (len(namn) > = 7):
# Ökningsräknare en efter en
disken=räknare +1
# Kontrollera räknarvärdet
om (disken> 0):
skriva ut('%d person (er) namnlängd är/är mer än 7.'%disken)
annan:
skriva ut('Namnlängden på alla personer är mindre än 7.')
Produktion:
Följande utdata visas efter att manuset har körts.
Slutsats:
Olika sätt att söka efter enskilda och flera element i listan visas i den här självstudien med i operatör, index metod och anpassad funktion. Läsaren kommer att kunna söka ordentligt i pythonlistan efter att ha läst den här självstudien.
Se författarens video: här