Comment filtrer une liste de chaînes dans Python

Comment filtrer une liste de chaînes dans Python
Python utilise le type de données de liste pour stocker plusieurs données dans un index séquentiel. Il fonctionne comme une gamme numérique d'autres langages de programmation. La méthode filtre () est une méthode très utile de Python. Une ou plusieurs valeurs de données peuvent être filtrées à partir de n'importe quelle chaîne ou liste ou dictionnaire dans Python en utilisant la méthode Filter (). Il filtre les données sur la base d'une condition particulière. Il stocke les données lorsque la condition renvoie vraie et rejette les données lorsque vous retournez faux. La façon dont les données de chaîne dans une liste peuvent être filtrées dans Python est indiquée dans cet article en utilisant différents exemples. Vous devez utiliser Python 3+ pour tester les exemples de cet article.

Filtrez une liste de chaîne à l'aide d'une autre liste

Cet exemple montre comment les données d'une liste de chaîne peuvent être filtrées sans utiliser de méthode. La liste de la chaîne est filtrée ici en utilisant une autre liste. Ici, deux variables de liste sont déclarées avec le nom liste 1 et list2. Les valeurs de list2 est filtré en utilisant les valeurs de liste 1. Le script correspondra au premier mot de chaque valeur de list2 avec les valeurs de liste 1 et imprimer ces valeurs qui n'existent pas dans liste 1.

# Déclarer deux variables de liste
list1 = ['perl', 'php', 'java', 'asp']
list2 = ['JavaScript est le langage de script côté client',
«PHP est un langage de script côté serveur»,
«Java est un langage de programmation»,
«Bash est une langue de script»]
# Filtrez la deuxième liste basée sur la première liste
filter_data = [x pour x dans list2 si
tout (y pas en x pour y dans list1)]
# Imprimer la liste des données avant le filtre et après le filtre
print ("Le contenu de la première liste:", list1)
print ("Le contenu de la deuxième liste:", list2)
print ("Le contenu de la deuxième liste après filtre:", filter_data)

Sortir:

Exécutez le script. Ici, liste 1 ne contient pas le mot 'Frapper'. La sortie ne contiendra qu'une seule valeur de list2 c'est 'Bash est une langue de script '.

Filtrez une liste de chaîne à l'aide d'une autre liste et de la fonction personnalisée

Cet exemple montre comment une liste de chaîne peut être filtrée en utilisant une autre liste et la fonction de filtre personnalisée. Le script contient deux variables de liste nommées list1 et list2. La fonction de filtre personnalisée découvrira les valeurs communes des deux variables de liste.

# Déclarer deux variables de liste
list1 = ['90', '67', '34', '55', '12', '87', '32']
list2 = ['9', '90', '38', '45', '12', '20']
# Déclarer une fonction de filtre les données de la première liste
Def Filter (list1, list2):
retourner [n pour n dans list1 si
n'importe quel (m en n pour m dans list2)]
# Imprimez les données de la liste avant le filtre et après le filtre
print ("Le contenu de List1:", list1)
print ("Le contenu de List2:", list2)
Imprimer ("les données après filtre", filtre (list1, list2))

Sortir:

Exécutez le script. Les valeurs 90 et 12 existent dans les deux variables de liste. La sortie suivante sera générée après l'exécution du script.

Filtrez une liste de chaîne en utilisant l'expression régulière

La liste est filtrée en utilisant tous() et n'importe quel() Méthodes dans les deux exemples précédents. Une expression régulière est utilisée dans cet exemple pour filtrer les données d'une liste. Une expression régulière est un modèle par lequel toutes les données peuvent être recherchées ou appariées. 'concernant' Le module est utilisé dans Python pour appliquer une expression régulière dans le script. Ici, une liste est déclarée avec des codes de sujet. Une expression régulière est utilisée pour filtrer ces codes de sujet qui commencent par le mot, 'CSE'. '^'Le symbole est utilisé dans des modèles d'expression réguliers pour rechercher au début du texte.

# Importer le module RE pour utiliser l'expression régulière
Importer RE
# Déclarer la liste contient le code sujet
sublist = [«CSE-407», «Phy-101», «CSE-101», «ENG-102», «MAT-202»]
# Déclarer la fonction de filtre
Filtre DEF (Datalist):
# Rechercher des données basées sur l'expression régulière dans la liste
Renvoie [Val pour Val dans Datalist
Si re.Recherche (r '^ cse', val)]
# Imprimez les données du filtre
imprimer (filtre (subliste))

Sortir:

Exécutez le script. subliste La variable contient deux valeurs qui commencent par 'CSE'. La sortie suivante apparaîtra après l'exécution du script.

Filtrez une liste de chaîne en utilisant l'expression de lamda

Cet exemple montre l'utilisation de lame Expression pour filtrer les données à partir d'une liste de chaînes. Ici, une variable de liste nommée search_word est utilisé pour filtrer le contenu à partir d'une variable de texte nommée texte. Le contenu du texte est converti en une liste nommée, texte basé sur l'espace en utilisant diviser() méthode. lame L'expression omettra ces valeurs du texte qui existent dans search_word et stocker les valeurs filtrées dans une variable en ajoutant de l'espace.

# Déclarer une liste qui contient le mot de recherche
search_word = ["enseigner", "code", "programmation", "blog"]
# Définissez le texte où le mot de la liste recherchera
text = "Learn Python Programming à partir du blog d'inspiration Linux"
# Divisez le texte en fonction de l'espace et stockez les mots dans une liste
text_word = texte.diviser()
# Utilisation d'expression de lambda Filtrez les données
filter_text = ".join ((filter (Lambda Val: Val Not in search_word, texte_word)))
# Imprimer le texte avant le filtrage et après le filtrage
print ("\ ntext avant le filtrage: \ n", texte)
print ("texte après filtrage: \ n", filter_text)

Sortir:

Exécutez le script. La sortie suivante apparaîtra après l'exécution du script.

Filtre une liste de chaîne à l'aide de la méthode filtre ()

filtre() La méthode accepte deux paramètres. Le premier paramètre prend un nom de fonction ou Aucun Et le deuxième paramètre prend le nom de la variable de liste comme valeurs. filtre() La méthode stocke ces données de la liste si elle renvoie vrai, sinon, il élimine les données. Ici, Aucun est donné comme la première valeur de paramètre. Toutes les valeurs sans FAUX sera récupéré de la liste sous forme de données filtrées.

# Déclarer une liste des données de mixage
listData = ['Hello', 200, 1, 'world', false, true, '0']
# Appel filtre () avec aucune et une liste
filteredData = filtre (aucun, listData)
# Imprimez la liste après avoir filtré les données
Imprimer ('la liste après le filtrage:')
pour Val dans filteredData:
Imprimer (Val)

Sortir:

Exécutez le script. La liste ne contient qu'une seule fausse valeur qui sera omise dans les données filtrées. La sortie suivante apparaîtra après l'exécution du script.

Conclusion:

Le filtrage est utile lorsque vous devez rechercher et récupérer des valeurs particulières à partir d'une liste. J'espère que les exemples ci-dessus aideront les lecteurs à comprendre les façons de filtrer les données d'une liste de chaînes.