Python en Mathématiques - Niveau 2

Lire un fichier texte

Compter les lettres dans une chaîne de caractères

Écrire une fonction Python nommée compte_lettre() qui respecte les spécifications suivantes :

Paramètre phrase, une chaîne de caractères
valeur retournée le nombre de lettres de l'alphabet utilisées dans cette chaîne (en comptant 3 si la lettre a est trois fois présente...)
  • Un code possible

			
			

Lire un fichier

Ce fichier cible est le texte de "L'Assommoir" d'Émile Zola.

On aimerait compter le nombre de lettres utilisées dans le texte. Voici comment procèder avec Python :


##----- Définition des fonctions -----##
def compte_lettre(phrase) :
	lettres = "abcdefghijklmnopqrstuvwxyzéèùîïê"
	LETTRES = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
	compteur = 0
	for c in phrase :
		if c in lettres or c in LETTRES :
			compteur += 1
	return compteur 


##----- Lecture du fichier -----##
compteur_lettres = 0

with open('assommoir.txt', encoding='utf-8','r') as f :
	for ligne in f :  
		compteur_lettres += compte_lettre(ligne)

print(compteur_lettres)

Calcul de fréquence

Écrire un programme Python qui compte la fréquence d'utilisation de la lettre « e » dans le texte de "L'Assommoir" (pourcentage de « e » dans l'ensemble des lettres utilisées pour écrire le texte).

  • Un code possible

##----- Définition des fonctions -----##
def compte_lettre(phrase) :
	lettres = "abcdefghijklmnopqrstuvwxyzéèùîïê"
	LETTRES = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
	compteur = 0
	for c in phrase :
		if c in lettres or c in LETTRES :
			compteur += 1
	return compteur 

def compte_e(phrase) : 
	compteur = 0
	for c in phrase :
		if c in "eEéèëê" :
			compteur += 1
	return compteur

##----- Lecture du fichier -----##
compteur_lettres = 0
compteur_e = 0

with open('assommoir.txt', encoding='utf-8','r') as f :
	for ligne in f :  
		compteur_lettres += compte_lettre(ligne)
		compteur_e += compte_e(ligne)

print(compteur_lettres)
print(compteur_e / compteur_lettres)

On obtient environ 17 % de lettres e.