Un outil qui est fort utilisé aujourd'hui dans les cours mais aussi des campagnes marketing, des présentations, etc. est le nuage de mots. Il existe plusieurs site web prêt à générer un nuage sur base d'un texte comme https://nuagedemots.co/ ou https://www.abcya.com/games/word_clouds .
Dans un nuage de mot, la taille des mots dépend de leur nombre d'occurences dans le texte (voir images).
Nous vous demandons d'implémentez une fonction def compte_mots(phrase, speciaux):
qui reçoit un texte (un string) et une liste de mots spéciaux à ignorer, et retourne un dictionnaire ayant pour clés les mots, et pour valeurs le nombre d'occurence dans le texte.
Exemple 1:
- texte : "Un chasseur sachant chasser doit savoir chasser sans son chien . "
- mots spéciaux: [".", "un"]
La fonction va retourner le dictionnaire:
{'chasseur': 1, 'sachant': 1, 'chasser': 2, 'doit': 1, 'savoir': 1, 'sans': 1, 'son': 1, 'chien': 1}
Exemple 2:
- texte: "Trois gros rats gris , dans trois gros trous ronds , rongent trois gros croûtons ronds ! "
- mots spéciaux: [",","!"]
La fonction va retourner le dictionnaire:
{'trois': 3, 'gros': 3, 'rats': 1, 'gris': 1, 'dans': 1, 'trous': 1, 'ronds': 2, 'rongent': 1, 'croûtons': 1}
Notes:
- Vous pouvez assumer que chaque mot est séparé par un espace (et que le texte se termine par un espace).
- Vous pouvez ignore la casse des lettres ('A' est équivalent à 'a').