IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

Str to Hex


Sujet :

Python

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Apprenti technicien �l�ctronique
    Inscrit en
    F�vrier 2019
    Messages
    5
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activit� : Apprenti technicien �l�ctronique
    Secteur : High Tech - �lectronique et micro-�lectronique

    Informations forums :
    Inscription : F�vrier 2019
    Messages : 5
    Par d�faut Str to Hex
    Bonjour a tous,

    J'ai une fen�tre Tkinter dans laquelle j'ai mis des lignes de saisie, j'arrive a mettre les valeurs rentrer dans cette ligne de saisie dans des variables, les r�utiliser etc pas de probl�me la dessus.

    Sauf que les valeurs sont stocker en Str avec la fonction StringVar() et que j'ai besoin de les convertir en hexa pour pouvoir les int�gr�es aux donn�es de ma trame Bus Can...

    J'ai fait des recherches et j'ai trouver quelque commande comme : Hex(variable) mais �a me met un message d'erreur : " 'str' object cannot be interpreted as an integer " suite a �a j'ai donc essayer de passer ma variable en int pour ensuite la passer en hexa mais sans succ�s..

    Si vous avez une solution, je suis preneur !!

    Merci

  2. #2
    Expert �minent
    Homme Profil pro
    Architecte technique retrait�
    Inscrit en
    Juin 2008
    Messages
    21 776
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activit� : Architecte technique retrait�
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 776
    Par d�faut
    Salut,

    Citation Envoy� par subineps Voir le message
    Si vous avez une solution, je suis preneur !!
    "hex" est une solution... et le probl�me que vous rencontrez est probablement du � la fa�on dont vous l'utilisez et que vous ne montrez pas.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Apprenti technicien �l�ctronique
    Inscrit en
    F�vrier 2019
    Messages
    5
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activit� : Apprenti technicien �l�ctronique
    Secteur : High Tech - �lectronique et micro-�lectronique

    Informations forums :
    Inscription : F�vrier 2019
    Messages : 5
    Par d�faut
    Oui c'est surement �a !
    Je vous met un bout de mon code ducoup :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    var_texte2 = StringVar()
    fenetre_valeur=Toplevel()
    fenetre_valeur.title("Menu sonde")
    champ_label = Label(fenetre_valeur, text="Rentrez les valeurs du certificat:")
    champ_label.grid(row= 0, column = 0, sticky = W)
    champ_label = Label(fenetre_valeur, text="N°série sonde")
    champ_label.grid(row= 1, column = 0, sticky = W)
    ligne_texte = Entry(fenetre_valeur, textvariable=var_texte2, width=30)
    ligne_texte.grid(row= 2, column = 0, sticky = E)
    et ma fonction qui s'active quand j'appuie sur un bouton

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
     def numero_sonde():
        numerosonde = var_texte2.get()
        hex(numerosonde)
        print(numerosonde)

  4. #4
    Expert �minent
    Homme Profil pro
    Architecte technique retrait�
    Inscrit en
    Juin 2008
    Messages
    21 776
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activit� : Architecte technique retrait�
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 776
    Par d�faut
    Salut,

    Essayez de r�fl�chir un peu � ce que vous faites.
    Un nombre hexad�cimal est une chaine de caract�res qui repr�sente un nombre avec les digits 0-9, A-F.... Or var_texte2.get() vous retourne d�j� une chaine de caract�res.
    A quoi elle ressemble et qu'esp�rez vous obtenir/changer?

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  5. #5
    Nouveau membre du Club
    Homme Profil pro
    Apprenti technicien �l�ctronique
    Inscrit en
    F�vrier 2019
    Messages
    5
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activit� : Apprenti technicien �l�ctronique
    Secteur : High Tech - �lectronique et micro-�lectronique

    Informations forums :
    Inscription : F�vrier 2019
    Messages : 5
    Par d�faut
    C'est bien ce que j'essaie de faire...

    var_texte2.get() me retourne exactement ce que je rentre dans la ligne de saisie, exemple : (19 I1 V 0010)

    Seulement j'aimerais avoir directement une syntaxe hexad�cimal

  6. #6
    Expert �minent
    Homme Profil pro
    Architecte technique retrait�
    Inscrit en
    Juin 2008
    Messages
    21 776
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activit� : Architecte technique retrait�
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 776
    Par d�faut
    Citation Envoy� par subineps Voir le message
    Seulement j'aimerais avoir directement une syntaxe hexad�cimal
    Je ne vois pas trop ce que �� va vous apporter mais.... ord(..) va vous retourner l'entier correspondant � chaque caract�re auquel vous allez pouvoir appliquer hex.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  7. #7
    Nouveau membre du Club
    Homme Profil pro
    Apprenti technicien �l�ctronique
    Inscrit en
    F�vrier 2019
    Messages
    5
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activit� : Apprenti technicien �l�ctronique
    Secteur : High Tech - �lectronique et micro-�lectronique

    Informations forums :
    Inscription : F�vrier 2019
    Messages : 5
    Par d�faut
    Enfaite mon projet c'est de faire un banc de test pour une carte �lectronique et ma Rpi communique avec le �C de la carte par liaison bus can

    C'est pour pouvoir rentrer des valeurs dans la data de ma trame bus can :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
     
        msg4 = can.Message(arbitration_id=0x1080015,data=[0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00],extended_id=True)
        bus.send(msg4)
    J'ai donc essay� ord() et un message d'erreur apparait : "ord() expected a character, but string of length 10 found"
    ord() ne fonctionne que pour un caract�re

  8. #8
    Expert �minent
    Homme Profil pro
    Architecte technique retrait�
    Inscrit en
    Juin 2008
    Messages
    21 776
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activit� : Architecte technique retrait�
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 776
    Par d�faut
    Citation Envoy� par subineps Voir le message
    J'ai donc essay� ord() et un message d'erreur apparait : "ord() expected a character, but string of length 10 found"
    ord() ne fonctionne que pour un caract�re
    Si c'est data=[0x00, 0x00, ...], c'est une liste d'octets sous forme hexad�cimale.
    Un truc comme:
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    >>> [ hex(ord(z)) for z in 'toto' ]
    ['0x74', '0x6f', '0x74', '0x6f']
    >>>
    n'est pas la m�me chose que:
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    >>> [ ord(z) for z in 'toto' ]
    [116, 111, 116, 111]
    Citation Envoy� par subineps Voir le message
    Enfaite mon projet c'est de faire un banc de test pour une carte �lectronique et ma Rpi communique avec le �C de la carte par liaison bus can
    Il vous faut retravailler la diff�rence entre chaine de caract�res, octets/bytes et repr�sentation des nombres entiers.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

Discussions similaires

  1. convertion bin to hex
    Par steph_1 dans le forum MFC
    R�ponses: 3
    Dernier message: 14/03/2005, 18h59
  2. Comparaison de 2 str
    Par twizell dans le forum C
    R�ponses: 12
    Dernier message: 03/09/2003, 16h11
  3. [LG]de hex a ascii?
    Par sh2003 dans le forum Langage
    R�ponses: 6
    Dernier message: 22/08/2003, 03h12
  4. [Dev-Pascal] Le compilateur renseigne la fonction Str comme ill�gale
    Par goto dans le forum Autres IDE
    R�ponses: 3
    Dernier message: 16/08/2003, 16h22
  5. [VB6]fonction inverse de Hex (nombres hexadécimaux)
    Par Guigui_ dans le forum VB 6 et ant�rieur
    R�ponses: 4
    Dernier message: 08/10/2002, 19h31

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