Klassinen ongelma, joka voidaan käsitellä melko helposti Python ja on myös käsitelty useita kertoja on löytää, jos merkkijono on merkkijono toisen. Mutta joskus tätä halutaan laajentaa merkkijonojen listaan, ja näin ollen silloin vaaditaan koko säiliön läpikäyntiä ja geneerisen algoritmin suorittamista.

Keskustellaan eräitä tapoja löytää merkkijonoja, joilla on annettu merkkijonon osa listasta.

Menetelmä #1 : Listan ymmärtämisen käyttäminen
Listan ymmärtäminen on elegantti tapa suorittaa jokin tietty tehtävä, koska se lisää luettavuutta pitkällä aikavälillä. Tämä tehtävä voidaan suorittaa käyttämällä naiivia menetelmää ja näin ollen se voidaan pelkistää myös listan ymmärtämiseen.

test_list =
print ("The original list is : " + str(test_list))
subs = 'Geek'
res =
print ("All strings with given substring are : " + str(res))



Lähtö:

The original list is : All strings with given substring are : 

Menetelmä #2 : Käyttämällä filter() + lambda
Tällä funktiolla voidaan myös suorittaa tämä merkkijonojen etsiminen lambdan avulla. Se vain suodattaa kaikki merkkijonot, jotka vastaavat tiettyä osajonoa, ja lisää ne sitten uuteen luetteloon.

test_list =
print ("The original list is : " + str(test_list))
subs = 'Geek'
res = list(filter(lambda x: subs in x, test_list))
The original list is : All strings with given substring are : 

Menetelmä #3 : Käyttämällä re + search()
Regulaarilausekkeita voidaan käyttää monien tehtävien suorittamiseen pythonissa. Myös tämän tietyn tehtävän suorittamiseen säännölliset lausekkeet voivat olla käteviä. Se etsii kaikki yhteensopivat osajonot käyttämällä search() ja palauttaa tuloksen.

import re
test_list =
print ("The original list is : " + str(test_list))
subs = 'Geek'
res =
print ("All strings with given substring are : " + str(res))



Output:

The original list is : All strings with given substring are : 

Artikkeli Tunnisteet :