Voir le flux RSS

danielhagnoul

Python. Compter le nombre de mots et, dans l'ordre alphabétique, le nombre de chaque mot.

Noter ce billet
par , 03/11/2019 à 22h34 (699 Affichages)
Version JS : https://www.developpez.net/forums/bl...etique-nombre/

Pour un débutant en Python, ce n'est pas évident, car il faut connaître l'existence de Counter(), findall() et les subtilités du tri en UTF-8

Code Python : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
#! python3
# coding: utf-8
 
from collections import Counter
from re import findall
import locale
 
locale.setlocale(locale.LC_ALL, ('fr_FR', 'UTF-8'))
 
texte = '''
    C'est l'évadé, du Névada.
    Qui s'évada dans, la vallée
    Dans la vallée, du Névada ?
    Qu'il dévala, pour s'évader
    Sur un vilain vélo volé !
    Qu'il a volé, dans une villa
    Et le valet, qui fut volé.
    Vit l'évadé, qui s'envola
    '''
 
z = findall('[a-zA-Z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u00FF]*', texte.lower())
 
lst = sorted([x for x in z if x != '' and len(x) > 2], key=locale.strxfrm)
 
 
print('Nombre de mots = {}'.format(len(lst)))
 
cnt = Counter(lst)
 
for key, value in cnt.items():
    print('{} : {}'.format(key, value))
 
'''
dans : 3
dévala : 1
envola : 1
est : 1
évada : 1
évadé : 2
évader : 1
fut : 1
névada : 2
pour : 1
qui : 3
sur : 1
une : 1
valet : 1
vallée : 2
vélo : 1
vilain : 1
villa : 1
vit : 1
volé : 3
'''

Licence Creative Commons Attribution 2.0 Belgique

Envoyer le billet « Python. Compter le nombre de mots et, dans l'ordre alphabétique, le nombre de chaque mot. » dans le blog Viadeo Envoyer le billet « Python. Compter le nombre de mots et, dans l'ordre alphabétique, le nombre de chaque mot. » dans le blog Twitter Envoyer le billet « Python. Compter le nombre de mots et, dans l'ordre alphabétique, le nombre de chaque mot. » dans le blog Google Envoyer le billet « Python. Compter le nombre de mots et, dans l'ordre alphabétique, le nombre de chaque mot. » dans le blog Facebook Envoyer le billet « Python. Compter le nombre de mots et, dans l'ordre alphabétique, le nombre de chaque mot. » dans le blog Digg Envoyer le billet « Python. Compter le nombre de mots et, dans l'ordre alphabétique, le nombre de chaque mot. » dans le blog Delicious Envoyer le billet « Python. Compter le nombre de mots et, dans l'ordre alphabétique, le nombre de chaque mot. » dans le blog MySpace Envoyer le billet « Python. Compter le nombre de mots et, dans l'ordre alphabétique, le nombre de chaque mot. » dans le blog Yahoo

Mis à jour 04/11/2019 à 10h54 par danielhagnoul

Catégories
Programmation , Python , Python

Commentaires