Exempel 1: Hitta ett enda element i en lista med 'i' operatör
Följande skript visar hur du enkelt kan söka i något element i en lista med hjälp av 'i' utan att använda någon slinga. En lista med blommnamn definieras i skriptet och ett blommnamn tas som inmatning från användaren för att söka i listan. Om uttalande används med 'i' för att hitta namnet på blomman i listan.
#!/ usr / bin / env python3# Definiera en lista med blommor
flowerList = ['ros', 'påsklilja', 'solros', 'vallmo', 'blåklocka']
# Ta namnet på blomman som du vill söka i listan
flowerName = input ("Ange ett blommnamn:")
# Sök i elementet med hjälp av 'in' -operatören
if flowerName.lägre () i flowerList:
# Skriv ut framgångsmeddelande
skriva ut ("% s finns i listan"% (flowerName))
annan:
# Skriv inte meddelandet hittades
skriva ut ("% s finns inte i listan"% (flowerName))
Produktion:
Resultatet 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 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 block kommer att skriva ut framgångsmeddelandet om index() metoden returnerar ett giltigt positionsvärde baserat på sökvärde. Undantaget block kommer att skriva ut felmeddelandet om sökelementet inte finns i listan.
#!/ usr / bin / env python3Prova:
# Definiera en lista med böcker
bookList = ['The Cat in the Hat', 'Harold and the Purple Crayon',
'The Very Hungry Caterpillar', 'Goodnight Moon', 'Harold and the Purple Crayon']
# Ta namnet på boken som du vill söka i listan
bookName = input ("Ange ett boknamn:")
# Sök i elementet med indexmetoden
search_pos = int (boklista.index (bookName))
# Skriv ut hittat meddelande
skriva ut ("% s bok finns i listan"% (bookName))
utom (ValueError):
# Skriv inte meddelandet hittades
skriva ut ("% s bok finns inte i listan"% (bookName))
Produktion:
Utgången 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 i alla element i en lista i en annan lista. Tre listor används i detta skript. selectedList är huvudlistan där elementen i söklista kommer att sökas. foundList används här för att lagra de element som finns i selectedList efter sökning. Den första för loop används för att generera foundList och den andra för loop används för att itera foundList och visa utgången.
#!/ usr / bin / env python3# Definiera en lista med valda personer
selectedList = ['Sophia', 'Isabella', 'Olivia', 'Alexzendra', 'Bella']
# 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ör index, sList in enumerate (selectedList):
# Matcha elementet med elementet i searchList
om sLista i searchList:
# Lagra värdet i foundList om matchningen hittas
foundList.append (selectedList [index])
# iterera söklistan
för val i searchList:
# Kontrollera att värdet finns i foundList eller inte
om val in foundList:
skriv ut ("% s har valts.\ n "% val)
annan:
skriv ut ("% s har inte valts.\ n "% val)
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 en anpassad funktion med namnet findElement. Funktionen återgår Sann om listan innehåller sökelementet annars returnerar Falsk.
#!/ usr / bin / env python3# Definiera en lista över mat
food = ['pizza', 'cake', 'strawberry', 'chocolate', 'chicken fry', 'mango']
# Ta ett matnamn från användaren
search = input ('Skriv din favoritmat:')
# Definiera den anpassade funktionen för att hitta element i listan
def findElement (listName, searchElement):
# Läs listan med loop
för värde i listnamn:
# Kontrollera att elementvärdet är lika med sökvärdet eller inte
if value == searchElement:
återvänd True
# Returnera falsk om ingen matchning hittades
återvänd Falskt
# Ring funktionen med listnamnet och sökvärdet
if findElement (mat, sök.lägre()):
skriv ut ("% s hittas"% sökning)
annan:
skriva ut ("% s hittades inte"% sökning)
Produktion:
Följande utgång 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 listas namnet personer är iterera med för slinga och kontrollera längden på varje element i listan. Räknarvärdet ökas 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', 'Bella']
# Initiera räknaren
räknare = 0
# Iterera listan med hjälp av loop
för namn i personer:
# Kontrollera elementets längd
om (len (namn)> = 7):
# Öka räknaren med en
räknare = räknare + 1
# Kontrollera räknarvärdet
om (räknare> 0):
utskrift ("% d person (er) namnlängd är / är mer än 7." %disken)
annan:
tryck ("Namnlängden på alla personer är mindre än 7.")
Produktion:
Följande utdata visas efter körning av skriptet.
Slutsats:
Olika sätt att söka på enstaka och flera element i listan visas i denna handledning med hjälp av i operatör, index metod och anpassad funktion. Läsaren kommer att kunna söka ordentligt i pythonlistan efter att ha läst denna handledning.
Se författarens video: här