O problema clássico que pode ser tratado com bastante facilidade por Python e que também já foi tratado muitas vezes é encontrar se uma corda é substring de outra. Mas às vezes, deseja-se estender isso na lista de strings e, portanto, é necessário atravessar todo o recipiente e executar o algoritmo genérico.
Vamos discutir certas maneiras de encontrar strings com determinada subestrutura em lista.
Método #1 : Usando a compreensão de lista
A compreensão de lista é uma maneira elegante de executar qualquer tarefa em particular, uma vez que aumenta a legibilidade a longo prazo. Esta tarefa pode ser executada usando um método ingênuo e, portanto, pode ser reduzida à compreensão de lista também.
test_list
=
print
(
"The original list is : "
+
str
(test_list))
subs
=
'Geek'
res
=
print
(
"All strings with given substring are : "
+
str
(res))
The original list is : All strings with given substring are :
Método #2 : Usando filter()
+ lambda
Esta função também pode realizar esta tarefa de encontrar as cordas com a ajuda da lambda. Ela apenas filtra todas as strings que combinam com a substring em particular e depois adiciona-a em uma nova lista.
test_list
=
print
(
"The original list is : "
+
str
(test_list))
subs
=
'Geek'
res
=
list
(
filter
(
lambda
x: subs
in
x, test_list))
print
(
"All strings with given substring are : "
+
str
(res))
The original list is : All strings with given substring are :
Método #3 : Usando re + search()
Expressões regulares podem ser usadas para executar muitas tarefas em python. Para executar esta tarefa em particular também, expressões regulares podem vir a ser úteis. Ele encontra toda a substring correspondente usando search()
e retorna o resultado.
import
re
test_list
=
print
(
"The original list is : "
+
str
(test_list))
subs
=
'Geek'
res
=
print
(
"All strings with given substring are : "
+
str
(res))
The original list is : All strings with given substring are :
Deixe uma resposta