Bonjour à tous,

Je me permets de poster un message concernant la manipulations d'un ou plusieurs caractères dans une liste initialisé.


Voici l'objet du programme :

1) importation des librairies
2) création d'un fichier qui va lire le contenue d'un fichier txt ligne par ligne
3) création d'un contenant comprenant le résultats du traitement du fichier txt
4) Écriture des résultats
5) fermeture des fichiers


Voici mon code :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
 
import hashlib
 
filein=open("/home/x/Documents/x.txt","r")
lignes=filein.readlines()
 
fileout=open("file2dico.txt","w")
 
for i in lignes:
	fileout.write(hashlib.md5(i[:-1]).hexdigest()+"\n")
 
fileout.close()
filein.close()
Rendu :
3cc4a9a458d45578ecd7bbab6ec2aee5
a34c3d45b6018d3fd5560b103c2a00e2
4651d80cfa79f4933bc5408665394e9c
...
Premier problème : je souhaite afficher mot : hash md5 alors que mon résultat est juste résultat md5 dans le fichier txt.

Deuxième problème : dans une liste de mot, comment enlever par exemple les deux dernières caractères de chaque mots svp ?


Ex :
>>> lignes
['adams\n', 'allen\n', 'allison\n',..............]

je voudrais obtenir :

>>>lignes
['adams', 'allen', 'allison',..............]