p
u
b
l
i
c
i
t
é
publicité
  1. #1
    Membre confirmé
    Étudiant
    Inscrit en
    décembre 2007
    Messages
    629
    Détails du profil
    Informations personnelles :
    Âge : 29

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : décembre 2007
    Messages : 629
    Points : 204
    Points
    204

    Par défaut remplir un tableau de valeurs hexadécimales

    Bonjour,
    J'utilise python pour lancer des tests unitaires.
    j'ai une application client/serveur écrit en C/C++ et j'utilise swig pour génerer l'interface.
    j'ai une fonction py_send( con_num, data ) qui permet d'envoyer data.
    marche bien. je recois bien "Hello" des deux cotés.
    Maintenant j'aimerais envoyer un tableau contenant des valeurs hexadécimal ( pris à partir d'une capture wireshark ).
    Ma question :
    comment écrire un tableau ou une chaine contenant ces valeurs héxadécimales ?
    j'ai fait :
    dataTosend = [0x66, 0x00, 0x00, 0x39] mais mon programme dit qu'il y a une erreur quand ma fonction de chiffrement essaie chiffrer dataTosend avant de l'envoyer. Je ne sais donc pa si la facon dont j'envoie les données hexadécimale est correcte ou pas.

    Merci d'avance pour votre aide.

  2. #2
    Membre émérite
    Avatar de afranck64
    Homme Profil pro
    Étudiant
    Inscrit en
    janvier 2009
    Messages
    590
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 24
    Localisation : Autre

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : janvier 2009
    Messages : 590
    Points : 995
    Points
    995

    Par défaut

    Bonjour,
    d abord, je pense qu il est preferable d utiliser un tuple ( ca fait plus tableau C) et a defaut, faire si c est un nombre, ou concatener les differentes valeurs dans une chaine et puis tranmettre la chaine resultante.
    Win 7 HP 64 bits /Ubuntu 12.04, - AMD A6 Quad: Py32 / Py27
    CONTENU D'UNE QUESTION
    Exemples:
    - Configuration (système d'exploitation, version de Python et des bibliothèques utilisées)
    - Code source du morceau de programme où il y a un bogue
    - Ligne de code sur laquelle le bogue apparaît
    - Erreur complète retournée pas l'interpréteur Python
    - Recherche déjà effectuée (FAQ, Tuto, Web, ...)
    - Tests déjà effectués

  3. #3
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    novembre 2008
    Messages
    327
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 24
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : novembre 2008
    Messages : 327
    Points : 229
    Points
    229

    Par défaut

    J'aurai également envoyé cela sous forme d'un string puis récupéré le tableau:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    string = str(dataTosend)
    ..
    ..
    dataRecup = eval(string)

  4. #4
    Membre confirmé
    Étudiant
    Inscrit en
    décembre 2007
    Messages
    629
    Détails du profil
    Informations personnelles :
    Âge : 29

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : décembre 2007
    Messages : 629
    Points : 204
    Points
    204

    Par défaut

    Est ce que tu peux me montrer un exemple très simple avec 0x66, 0x00, 0x00, 0x39 ?

  5. #5
    Membre émérite
    Avatar de afranck64
    Homme Profil pro
    Étudiant
    Inscrit en
    janvier 2009
    Messages
    590
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 24
    Localisation : Autre

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : janvier 2009
    Messages : 590
    Points : 995
    Points
    995

    Par défaut

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    val = int("0x39",16)
    val2 = eval("0x39")
    print val, val2
    avec <int> par example, il faut fournir la base dans laquelle se trouvent la chaine passe en parametre (facultatif pour la base 10). <eval> quant a lui est un genie.
    Win 7 HP 64 bits /Ubuntu 12.04, - AMD A6 Quad: Py32 / Py27
    CONTENU D'UNE QUESTION
    Exemples:
    - Configuration (système d'exploitation, version de Python et des bibliothèques utilisées)
    - Code source du morceau de programme où il y a un bogue
    - Ligne de code sur laquelle le bogue apparaît
    - Erreur complète retournée pas l'interpréteur Python
    - Recherche déjà effectuée (FAQ, Tuto, Web, ...)
    - Tests déjà effectués

Discussions similaires

  1. Réponses: 10
    Dernier message: 21/04/2010, 14h07
  2. Réponses: 4
    Dernier message: 11/04/2010, 14h18
  3. Remplir un tableau par des valeurs
    Par creep015 dans le forum AJAX
    Réponses: 1
    Dernier message: 06/04/2010, 12h47
  4. Remplir un tableau à partir d'une valeur initiale
    Par Maliciouss dans le forum Pascal
    Réponses: 9
    Dernier message: 13/12/2009, 14h46
  5. Réponses: 8
    Dernier message: 06/08/2007, 11h32

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo