Python heeft verschillende datatypes om de verzameling van gegevens op te slaan. Python lijst is een van hen en een lijst kan verschillende soorten gegevens bevatten, zoals nummer, string, boolean, enz. Soms is het nodig om bepaalde elementen in een lijst te zoeken. De elementen kunnen op verschillende manieren in de python lijst worden gezocht. Hoe je elk element en een lijst van elementen in de lijst kunt vinden, wordt in deze tutorial uitgelegd aan de hand van verschillende voorbeelden.
- Voorbeeld-1: Vind een enkel element in een lijst met behulp van ‘in’ operator
- Exemplaar-2: een element vinden met behulp van de indexmethode
- Exemplaar-3: meerdere indices in een lijst zoeken
- Exemplaar-4: een element vinden met de aangepaste functie
- Exemplaar-5: elementen in een lijst zoeken en tellen op basis van lengte
- Conclusie:
Voorbeeld-1: Vind een enkel element in een lijst met behulp van ‘in’ operator
Het volgende script laat zien hoe je eenvoudig elk element in een lijst kunt zoeken met behulp van ‘in’ operator zonder gebruik te maken van een lus. Een lijst van bloemennamen wordt gedefinieerd in het script en een bloemennaam zal worden genomen als invoer van de gebruiker om in de lijst te zoeken. Het statement If wordt gebruikt met de operator ‘in’ om de ingevoerde bloemnaam in de lijst te vinden.
# Definieer een lijst met bloemen
flowerList =
# Neem de naam van de bloem die u in de lijst wilt zoeken
flowerName = input(“Voer een bloemnaam in:”)
# Zoek het element met behulp van de operator ‘in’
if flowerName.lower() in flowerList:
# Succesbericht afdrukken
print(“%s is gevonden in de lijst” %(flowerName))
else:
# Niet gevonden bericht afdrukken
print(“%s is niet gevonden in de lijst” %(flowerName))
Uitvoer:
De uitvoer laat zien dat Narcis in de lijst bestaat en Lelie niet in de lijst.
Exemplaar-2: een element vinden met behulp van de indexmethode
Een andere eenvoudige manier om een bepaald element in een lijst te vinden, is met behulp van de indexmethode. Het volgende script toont het gebruik van de index() methode voor het zoeken van een element in een lijst. Deze methode retourneert een geldige index positie als het specifieke element in de lijst is gevonden, anders zal het een ValueError genereren als je de positie in een variabele wilt opslaan. het try blok zal het succes bericht afdrukken als de index() methode een geldige positie waarde retourneert gebaseerd op de zoek waarde. Het except blok zal het foutbericht afdrukken als het zoekelement niet bestaat in de lijst.
try:
# Definieer een lijst met boeken
bookList =
# Neem de naam van het boek dat u in de lijst wilt zoeken
bookName = input(“Voer een boeknaam in:”)
# Doorzoek het element met behulp van de indexmethode
search_pos = int(bookList.index(bookName))
# Gevonden bericht afdrukken
print(“%s boek is gevonden in de lijst” %(bookName))
except(ValueError):
#Niet gevonden bericht afdrukken
print(“%s boek is niet gevonden in de lijst” %(bookName))
Uitvoer:
De uitvoer laat zien dat ‘Goodnight Moon’ bestaat in de lijst en ‘Charlie and the Chocolate Factory’ niet bestaat in de lijst.
Exemplaar-3: meerdere indices in een lijst zoeken
Hoe u een enkel element in een lijst kunt vinden, is te zien in de vorige twee voorbeelden. Het volgende script laat zien hoe u alle elementen van een lijst in een andere lijst kunt zoeken. In dit script worden drie lijsten gebruikt. selectedList is de hoofdlijst waarin de elementen van searchList worden doorzocht. foundList wordt hier gebruikt om de elementen op te slaan die na het doorzoeken in selectedList worden gevonden. De eerste for-lus wordt gebruikt om foundList te genereren en de tweede for-lus wordt gebruikt om foundList te itereren en de uitvoer weer te geven.
# Definieer een lijst met geselecteerde personen
selectedList =
# Definieer een lijst met zoekende personen
searchList =
# Definieer een lege lijst
foundList =
# Loop elk element uit de geselecteerde lijst na
for index, sList in enumerate(selectedList):
# Match het element met het element van searchList
if sList in searchList:
# Sla de waarde op in foundList als de match is gevonden
foundList.append(selectedList)
# iterate the searchList
for val in searchList:
# Controleer of de waarde in foundList bestaat of niet
if val in foundList:
print(“%s is geselecteerd.\%val)
else:
print(“%s is niet geselecteerd.%val”)
Uitvoer:
De volgende uitvoer verschijnt na het uitvoeren van het woord.
Exemplaar-4: een element vinden met de aangepaste functie
Als u een element meerdere keren in een lijst wilt vinden, kunt u beter een aangepaste zoekmethode gebruiken in plaats van meerdere keren een zoekscript te schrijven. Het volgende script laat zien hoe je een willekeurige waarde in een lijst kunt vinden met behulp van een aangepaste functie genaamd findElement. De functie geeft True terug als de lijst het gezochte element bevat, anders geeft het False terug.
# Definieer een lijst met levensmiddelen
food =
# Neem een naam van een levensmiddel van de gebruiker
search = input(‘Typ uw favoriete levensmiddel : ‘)
# Definieer de aangepaste functie om een element in de lijst te vinden
def findElement(listName, searchElement):
# Lees de lijst met behulp van de lus
for value in listName:
# Controleer of de waarde van het element gelijk is aan de zoekwaarde of niet
if value == searchElement:
return True
# Return false if no match found
return False
# Roep de functie met de lijstnaam en de zoekwaarde op
if findElement(food, search.lower()):
print(“%s is gevonden” %search)
else:
print(“%s is niet gevonden” %search)
Uitvoer:
De volgende uitvoer wordt weergegeven voor de invoer ‘Cake’ en ‘Chocoladetaart’.
Exemplaar-5: elementen in een lijst zoeken en tellen op basis van lengte
Het volgende script laat zien hoe u het aantal elementen in een lijst kunt vinden en tellen op basis van de lengte van het element. Hier wordt de lijst met de naam personen ge-iterate met behulp van een for-lus en wordt de lengte van elk element van de lijst gecontroleerd. De tellerwaarde neemt toe als de lengte van het element groter of gelijk is aan 7.
# Definieer een lijst met personen
personen =
# Initialiseer de teller
counter = 0
# Loop de lijst na met loop
for name in persons:
# Controleer de lengte van het element
if (len(name) >= 7) :
# Verhoog de teller met één
counter = counter + 1
# Controleer de waarde van de teller
if (counter > 0):
print(“%d perso(o)n(en) naamlengte is/zijn meer dan 7.” %counter)
else:
print(“De naamlengte van alle personen is minder dan 7.”)
Uitvoer:
De volgende uitvoer verschijnt na het uitvoeren van het script.
Conclusie:
Verschillende manieren om enkele en meervoudige elementen in de lijst te zoeken worden in deze tutorial getoond met behulp van in operator, index methode, en aangepaste functie. Na het lezen van deze tutorial zal de lezer in staat zijn om goed te zoeken in de python-lijst.
Bekijk de video van de auteur: hier