Diviser une phrase en mots en Python

Muhammad Maisam Abbas 30 janvier 2023
  1. Divisez la phrase en mots avec la fonction str.split() en Python
  2. Diviser la phrase en mots avec des compréhensions de liste en Python
  3. Divisez la phrase en mots avec la bibliothèque nltk en Python
Diviser une phrase en mots en Python

Ce tutoriel discutera des méthodes pour diviser une phrase en une liste de mots en Python.

Divisez la phrase en mots avec la fonction str.split() en Python

La str.split() fonction en Python prend un séparateur comme paramètre d’entrée et divise la chaîne d’appel en plusieurs chaînes en fonction du séparateur. Si nous ne spécifions aucun séparateur, la fonction str.split() divise la chaîne sur la base des espaces vides. L’extrait de code suivant nous montre comment diviser une phrase en une liste de mots avec la fonction str.split().

sentence = "This is a sentence"
words = sentence.split()
print(words)

Production :

['This', 'is', 'a', 'sentence']

Nous avons déclaré une variable de chaîne sentence qui contient des données. Nous divisons ensuite la variable sentence en une liste de chaînes avec la fonction phrase.split() et stockons les résultats dans la liste words. La fonction str.split() est le moyen le plus simple de convertir une phrase en une liste de mots en Python.

Diviser la phrase en mots avec des compréhensions de liste en Python

Nous pouvons également utiliser des compréhensions de liste pour diviser une phrase en une liste de mots. Cependant, cette approche n’est pas aussi simple que la fonction str.split(). L’avantage d’utiliser des compréhensions de liste est que l’on peut également effectuer certaines opérations sur les mots obtenus. Les opérations peuvent aller de l’ajout de quelque chose à chaque mot ou de la suppression de quelque chose de chaque mot. L’extrait de code suivant nous montre comment diviser une phrase en mots avec des listes de compréhension et la fonction str.split().

sentence = "This is a sentence"
words = [word for word in sentence.split()]
print(words)

Production :

['This', 'is', 'a', 'sentence']

Nous avons déclaré une variable de chaîne sentence qui contient des données. Nous avons ensuite divisé la variable sentence en une liste de chaînes avec une compréhension de liste et stocké les résultats dans la liste words. Cette méthode est utile pour modifier chaque mot obtenu avant de stocker le mot dans la liste words.

Divisez la phrase en mots avec la bibliothèque nltk en Python

La bibliothèque nltk ou Natural language toolkit est utilisée pour le traitement de texte en Python. Nous devons l’installer avant de l’utiliser car il s’agit d’une bibliothèque externe. La commande pour installer la boîte à outils en langage naturel est donnée ci-dessous.

pip install nltk

Une fois installé, nous devons télécharger le package punkt à l’aide de la fonction nltk.download(). Ce phénomène est illustré dans l’extrait de code suivant.

import nltk

nltk.download("punkt")

Production :

[nltk_data] Downloading package punkt to /root/nltk_data...
[nltk_data]   Unzipping tokenizers/punkt.zip.

La fonction word_tokenize() à l’intérieur de la bibliothèque nltk peut être utilisée pour résoudre notre problème spécifique. Cette fonction prend une chaîne comme paramètre d’entrée et la divise en plusieurs sous-chaînes. L’extrait de code suivant nous montre comment diviser une phrase en une liste de mots avec la fonction nltk.word_tokenize().

sentence = "This is a sentence"
words = nltk.word_tokenize(sentence)
print(words)

Production :

['This', 'is', 'a', 'sentence']

Nous divisons notre chaîne sentence en une liste de mots avec la fonction nltk.word_tokenize(sentence) et stockons les résultats dans la liste words. Au final, nous avons affiché les éléments à l’intérieur de la liste words.

La méthode str.split() est le moyen le plus simple de résoudre ce problème spécifique, mais il n’y a pas grand-chose à faire avec la fonction split() une fois que nous avons la liste de mots. Les deux autres méthodes sont utiles lorsque l’on veut effectuer des manipulations supplémentaires sur les mots obtenus.

Muhammad Maisam Abbas avatar Muhammad Maisam Abbas avatar

Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.

LinkedIn

Article connexe - Python String