Givet en lista är uppgiften att skriva ett program som kontrollerar om något element i listan med strängdatatyp finns i listan eller inte, genom att använda de metoder eller sätt som anges i Pytonorm .
Exempel:
Input: l=[1, 1.0, 'have', 'a', 'geeky', 'day']; s='geeky' Output: True Explanation: geeky is present in the input list>
Hitta strängen i en lista i Python
Nedan är metoderna som vi kommer att täcka i den här artikeln:
- Använder sig av i operatör
- Använder sig av räkna() fungera
- Använda listförståelse
- Använder sig av några() fungera
- Använda map() med find()-metoder
- Använder sig av operatör metoder
- Använd try/except och index()
- Använder re i Python
- Använder sig av enumerate() Funktion
- Använder sig av Numpy bibliotek
Hitta strängen i en lista med 'i'-operatorn
De i operatorn är praktisk för att kontrollera om en viss sträng/element finns i listan. Så här är koden där vi använder en villkorssats med 'in'-operator för att kontrollera om vi har den specifika strängen i listan och den villkorliga operatorn returnerar booleska värden enligt den.
Python3
# assign list> l>=> [>1>,>2.0>,>'have'>,>'a'>,>'geeky'>,>'day'>]> # assign string> s>=> 'geeky'> # check if string is present in the list> if> s>in> l:> >print>(f>'{s} is present in the list'>)> else>:> >print>(f>'{s} is not present in the list'>)> |
>
>Produktion
geeky is present in the list>
Tidskomplexitet: På)
Hjälputrymme: O(1)
Hitta String in List med count()-metoden
De räkna() funktion används för att räkna förekomsten av en viss sträng i listan. Om antalet av en sträng är mer än 0 i Python-listan med strängar, betyder det att en viss sträng finns i listan, annars finns den strängen inte i listan. I den givna koden använder vi vi använder den villkorliga satsen för att kontrollera om den specifika strängen finns eller inte, om den inte finns, returnerar räknefunktionen 0.
Python3
# assign list> l>=> [>'1'>,>1.0>,>32>,>'a'>,>'geeky'>,>'day'>]> # assign string> s>=> 'prime'> # check if string is present in list> if> l.count(s)>>0>:> >print>(f>'{s} is present in the list'>)> else>:> >print>(f>'{s} is not present in the list'>)> |
>
>Produktion
prime is not present in the list>
Tidskomplexitet: O(n)
Hjälputrymme: O(1)
Hitta en sträng i en lista med hjälp av listförståelse
Lista upp förståelser används för att skapa nya listor från andra iterables som tupler, strängar, arrayer, listor, etc. Det används för att omvandla iterativa uttalanden till formler. I denna skapar vi en lista för att lagra strängen som vi måste hitta i listan och sedan lagra den i den nya listan, och sedan kan vi kontrollera om den nya listan är tom.
Python3
java innehåller delsträng
# assign list> l>=> [>'hello'>,>'geek'>,>'have'>,>'a'>,>'geeky'>,>'day'>]> # assign string> s>=> 'geek'> # list comprehension> compare>=> [i>for> i>in> l>if> s>in> l]> # check if string is present in list> if> len>(compare)>>0>:> >print>(f>'{s} is present in the list'>)> else>:> >print>(f>'{s} is not present in the list'>)> |
>
>Produktion
geek is present in the list>
Tidskomplexitet: På)
Utrymmes komplexitet: På)
Hitta strängen i listan med någon() funktion
De några() funktion används för att kontrollera förekomsten av ett element i listan. det är som - om något element i strängen matchar inmatningselementet, skriv ut att elementet finns i listan, annars skriv ut att elementet inte finns i listan.
Python3
# assign list> l>=> [>'hello'>,>'geek'>,>'have'>,>'a'>,>'geeky'>,>'day'>]> # assign string> s>=> 'prime'> # check if string is present in list> if> any>(s>in> i>for> i>in> l):> >print>(f>'{s} is present in the list'>)> else>:> >print>(f>'{s} is not present in the list'>)> |
>
>Produktion
prime is not present in the list>
Tidskomplexitet: På)
Utrymmes komplexitet: På)
Hitta sträng i en lista med metoderna map() och find().
Här med Karta() vi konverterar varje datatyp av listan till en sträng och sammanfogar dem sedan och skapar en enda sträng sedan med hjälp av hitta() funktion söker vi strängen i den.
Python3
l>=> [>1>,>2.0>,>'have'>,>'a'>,>'geeky'>,>'day'>]> # assign string> s>=> 'geeky'> nl>=>list>(>map>(>str>,l))> x>=>' '>.join(nl)> # check if string is present in the list> if> x.find(s)!>=>->1>:> >print>(f>'{s} is present in the list'>)> else>:> >print>(f>'{s} is not present in the list'>)> |
>
vad är maven
>Produktion
geeky is present in the list>
Tidskomplexitet: På)
Utrymmes komplexitet: På)
Hitta strängen i en lista med operatormetoder
Exempel 1: Använder metoden operator.countOf().
I Python operatörsmodulen vi har cout.Of() metod som returnerar antalet förekomster av det specifika elementet som finns i listan och om det inte finns så returnerar 0 så genom detta kan vi också hitta strängen i en lista
Python3
import> operator as op> # assign list> l>=> [>'1'>,>'1'>,>1.0>,>32>,>'a'>,>'geeky'>,>'day'>]> # assign string> s>=> 'prime'> # check if string is present in list> if> op.countOf(l, s):> >print>(f>'{s} is present in the list'>)> else>:> >print>(f>'{s} is not present in the list'>)> #it return the number of occurence of element in the list> print>(>'The no. of occurrence of '1' in the list is:'>,op.countOf(l,>'8'>))> |
>
>Produktion
prime is not present in the list The no. of occurrence of '1' in the list is: 0>
Tidskomplexitet: PÅ)
Hjälputrymme: O(1)
Exempel 2: Använda operator.contains()
Kontrollera om den givna strängen finns i lista med operatör. innehåller() . Om de ja visningssträngen finns i listan annars finns visningssträngen inte i listan
Python3
# assign list> import> operator> l>=> [>1>,>2.0>,>'have'>,>'a'>,>'geeky'>,>'day'>]> # assign string> s>=> 'geeky'> # check if string is present in the list> if> operator.contains(l, s):> >print>(f>'{s} is present in the list'>)> else>:> >print>(f>'{s} is not present in the list'>)> |
>
>Produktion
geeky is present in the list>
Tidskomplexitet : O(n) n – listans längd
Hjälputrymme: O(1)
Hitta en sträng i en lista Använd try/except och index()
Du kan använda index() metod för att hitta det första indexet för en sträng i en lista. Om strängen finns i listan returnerar metoden index() det första indexet för strängen, annars höjer den ett ValueError. För att kontrollera om en sträng finns i en lista kan du slå in metoden index() i en försök-utom blockera och skriv ut ett meddelande som anger om strängen finns i listan eller inte.
Python3
# assign list> l>=> [>1>,>2.0>,>'have'>,>'a'>,>'geeky'>,>'day'>]> > # assign string> s>=> 'geeky'> > try>:> ># check if string is present in list> >index>=> l.index(s)> >print>(f>'{s} is present in the list at index {index}'>)> except> ValueError:> >print>(f>'{s} is not present in the list'>)> |
>
>
itererande karta javaProduktion
geeky is present in the list at index 4>
Tidskomplexitet: O(n)
Hjälputrymme: O(1), eftersom metoden endast använder ett fåtal konstantstora variabler, oavsett storleken på listan.
Hitta strängen i listan med re-modulen
Initiera en lista l och en sträng s och importera sedan re-modulen. Använd forskning() funktion för att söka efter strängen s i listan l Om en matchning hittas, skriv ut att strängen s finns i listan Om ingen matchning hittas, skriv ut att strängen s inte finns i listan.
Python3
import> re> # assign list> l>=> [>1>,>2.0>,>'have'>,>'a'>,>'geeky'>,>'day'>]> # assign string> s>=> 'geeky'> # check if string is present in each string in the list> for> item>in> l:> >if> isinstance>(item,>str>)>and> re.search(s, item):> >print>(f>'{s} is present in the list'>)> >break> else>:> >print>(f>'{s} is not present in the list'>)> # This code is contributed by Vinay Pinjala.> |
>
>Produktion
geeky is present in the list>
Tidskomplexitet: O(n*m),
Hjälputrymme: O(1)
Python Lista över strängsökning med enumerate()-funktionen
I det här exemplet använder Python-koden enumerate för att iterera genom en lista med blandade typer, och kontrollerar om strängen 'nördig' finns i några strängelement. Funktionen re.search() används för att utföra en regex-sökning inom strängelement, och resultatet skrivs ut och indikerar närvaron eller frånvaron av strängen 'nördig' tillsammans med dess index i listan.
Python3
städer i australien
import> re> # Sample list of mixed types> l>=> [>1>,>2.0>,>'have'>,>'a'>,>'geeky'>,>'day'>]> # Assign string> s>=> 'geeky'> # Check if string is present in each string in the list using enumerate> for> index, item>in> enumerate>(l):> >if> isinstance>(item,>str>)>and> re.search(s, item):> >print>(f>'{s} is present in the list at index {index}'>)> >break> else>:> >print>(f>'{s} is not present in the list'>)> |
>
>Produktion
geeky is present in the list at index 4>
Tidskomplexitet: O(n)
Hjälputrymme: O(1)
Hitta strängen i en lista Använder numpy bibliotek
Importera numpy-modulen och initiera sedan en listvariabel l med några strängvärden. Initiera en strängvariabel s med värdet prime.Använd en listförståelse för att skapa en lista med booleska värden, där varje värde motsvarar om strängen s finns i motsvarande element i listan. l.Använd metoden np.any() för att kontrollera om något av värdena i den resulterande listan är True. Skriv ut ett meddelande som anger om strängen s finns i listan eller inte, baserat på värdet av res.
Python3
import> numpy as np> # assign list> l>=> [>'hello'>,>'geek'>,>'have'>,>'a'>,>'geeky'>,>'day'>]> # assign string> s>=> 'prime'> # check if string is present in list> res>=> np.>any>([s>in> i>for> i>in> l])> if> res:> >print>(f>'{s} is present in the list'>)> else>:> >print>(f>'{s} is not present in the list'>)> |
>
>
Produktion
prime is not present in the list>
Tidskomplexitet: O(nm)
Hjälputrymme: O(nm)