Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1127 connectés 

  FORUM HardWare.fr
  Programmation
  Python

  [Python]Problème de split.

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Python]Problème de split.

n°2331431
kNRD-
Posté le 04-04-2019 à 17:52:10  profilanswer
 

Bonjour,

 

Je travaille sur un TP pour la prépa, et je suis face à un petit soucis. Le TP porte sur le codage d'Huffman, en Python, et ma fonction doit convertir ma string résultant de l'encodage de l'arbre en une string avec les vrais valeurs binaires (chr encodés sur 8 bits).

 

Seulement voilà, ma string résultant est très longue et la voici '001100010011111011100110000111001011100111101110100001110010001010010010110100111100100010110010001001101101011100101110110111011011101101110110111011011101'

 

Celle-ci une fois convertie est censée me renvoyer une string qui est la suivante : '1>æ\x1c¹î\x87"\x92ÓȲ&×.Ý»ví\r'

 

Voici ma fonction, j'expliquerai le problème ensuite.

 

def tobinary(dataIN):
    """
    Compresses a string containing binary code to its real binary value.
    """
    outStr = ""
    L = [chr(int(dataIN[i:i+8],2)) for i in range(0, len(dataIN), 8)]
    for i in L:
        outStr += i
    return outStr

 

Le problème est le suivant, la construction de la liste est bonne puisque celle-ci renvoie : ['1', '>', 'æ', '\x1c', '¹', 'î', '\x87', '"', '\x92', 'Ó', 'È', '²', '&', '×', '.', 'Ý', '»', 'v', 'í', '\r']
Soit toutes les conversions attendues, mais lorsque dans ma boucle je concatène chacun des éléments de la liste à ma string "outStr" des caractères semblent être transformés et certains semblent disparaître puisque celle-ci renvoie : 1>æ¹î‡"’ÓȲ&×.Ý»ví

 

Pouvez-vous m'aider s.v.p car je sèche complètement sur le pourquoi du comment.


Message édité par kNRD- le 04-04-2019 à 17:54:25
mood
Publicité
Posté le 04-04-2019 à 17:52:10  profilanswer
 

n°2331438
MaybeEijOr​Not
but someone at least
Posté le 04-04-2019 à 19:24:18  profilanswer
 

Bonjour,
 
Ne vois-tu vraiment pas un dénominateur commun aux caractères manquants ?
Je te conseille de faire une recherche rapide avec les termes "Python" et "échappement". ;)  
 
Tu dis t'attendre à avoir en retour une chaîne de caractères de quelle longueur ? Cela ne te choque pas par rapport à la longueur de ta chaîne binaire ?


---------------
C'est en écrivant n'importe quoi qu'on devient n'importe qui.

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Python

  [Python]Problème de split.

 

Sujets relatifs
Question sur la programmation en Python avec Notepad++Problème pour créer une plateforme de conversion de monnaie avec vba
Problème requête GET serveurWeb/Microcontroleurpetit probleme avec grep
[Python] Génération de dictionnairesPython 3.6 extraction de feuille excel pour convertion en PDF
Création d'un "select" personnalisé[VB/VBA/VBS] Problème script pour exécuter des programmes
[PYTHON] Récupérer les donnée d'un programmeProblème de map sur un array
Plus de sujets relatifs à : [Python]Problème de split.


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR