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 :

XPath avec une variable [Python 3.X]


Sujet :

Python

  1. #1
    Membre régulier
    Homme Profil pro
    Pilote d'Avion Léger
    Inscrit en
    Février 2019
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 22
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Pilote d'Avion Léger
    Secteur : Transports

    Informations forums :
    Inscription : Février 2019
    Messages : 6
    Par défaut XPath avec une variable
    Bonjour,

    Certainement déjà posé comme question mais comment je fait pour utiliser XPath avec une variable, soit un truc comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    from lxml import etree
    Dataid = 856
    root = etree.parse("MonXML.xml").getroot()
    Info = root.xpath("//Information[@DataID = Dataid]/text()")
    print(Info)
    Voic le xml :
    <test>
    <Information DataID="856">77</Information>
    </test>

    Mon code marche puisqu'avec [@DataID = 856], print(Info) me sort [77].
    Cependant, avec [@DataID = Dataid], ça me sort [].

    Je cherche donc à savoir comment je peut utiliser ma variable Dataid pour plus tard n'avoir qu'à donner le Dataid pour qu'il me donne l'information !

    Merci de votre temps !

  2. #2
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 699
    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 699
    Par défaut
    Salut,

    Citation Envoyé par LeoZ235 Voir le message
    Je cherche donc à savoir comment je peut utiliser ma variable Dataid pour plus tard n'avoir qu'à donner le Dataid pour qu'il me donne l'information !
    "//Information[@DataID = 877]" est juste une chaîne de caractères.
    Et pour faire que le "877" soit fonction d'une variable on apprend comment concaténer ou à utiliser "format", ce que vous trouverez dans n'importe quel tuto aux chapitres ad hoc.

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

  3. #3
    Membre régulier
    Homme Profil pro
    Pilote d'Avion Léger
    Inscrit en
    Février 2019
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 22
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Pilote d'Avion Léger
    Secteur : Transports

    Informations forums :
    Inscription : Février 2019
    Messages : 6
    Par défaut
    Effectivement... je m'étais pas du tout rendu compte que ce n'était qu'une chaine de caractère...... j'avais trop le nez dedans...

    Du coup merci à toi !!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Rafraichissement avec une variable
    Par niceday dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 22/08/2005, 10h08
  2. Réponses: 5
    Dernier message: 25/06/2005, 11h35
  3. Réponses: 2
    Dernier message: 14/05/2004, 14h32
  4. Comparaison d'un registre 8 bits avec une variable 32 bits
    Par tupperware dans le forum x86 32-bits / 64-bits
    Réponses: 3
    Dernier message: 15/10/2002, 10h25
  5. Désigner une variable avec une variable?
    Par littleman dans le forum Paradox
    Réponses: 4
    Dernier message: 12/08/2002, 11h21

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