Python cractères!
Résolu
A voir également:
- Python cractères!
- Citizen code python avis - Accueil - Outils
- Mot secret python pix ✓ - Forum Python
- Afficher un message sur python "" ✓ - Forum Python
- Python generator - Télécharger - Sécurité
- Python est introuvable. exúcutez sans argument pour procúder ó l ✓ - Forum Python
4 réponses
Bonjour,
C'est bien le nombre de 'lettre' dans 'contenu' que tu veux
donc pourquoi écris tu texte.count() ?
texte n'est que l'identifiant du fichier jules.txt en ouverture ...
C'est bien le nombre de 'lettre' dans 'contenu' que tu veux
donc pourquoi écris tu texte.count() ?
texte n'est que l'identifiant du fichier jules.txt en ouverture ...
Bonjour,
Beaucoup de choses ne vont pas dans ton programme.
Bref, voici à quoi ça devrait plutôt ressembler :
Bonne chance
Beaucoup de choses ne vont pas dans ton programme.
- Si le fichier n'est pas ouvert avec succès, le programme plantera. Si tu rattrapes cette exception, tu verras que
dico
n'est pas déclaré au bon niveau. - Le mot clé
with
est conçu pour fermer le file descriptor (que tu as appelétexte
, mais qui n'est pas du texte) à la sortie du bloc. Il ne faut pas le fermer explicitement, sinon il sera fermé deux fois. - La méthode
count
sert à compter combien d'occurrence d'une sous-chaîne apparaissent dans une sous-chaîne. Par exemple,"abcabc".count("abc")
vaut 2. Elle ne répond donc pas à ton problème. - Si tu utilises
count
pour chaque lettre de l'alphabet, le programme sera très inefficace, puisque la chaîne qui contient l'intégralité du fichier sera relue pour chacun des caractères.
Bref, voici à quoi ça devrait plutôt ressembler :
#!/usr/bin/env python3 import sys from collections import defaultdict from pprint import pprint filename = "/etc/motd" d = defaultdict(int) try: with open(filename) as f: s = f.read() for a in s: d[a] += 1 except: print(f"Can't read {filename}", file=sys.stderr) pprint(d)
Bonne chance