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 :

Variable et dictionnaire


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    développeur
    Inscrit en
    Octobre 2004
    Messages
    480
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : développeur
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Octobre 2004
    Messages : 480
    Par défaut Variable et dictionnaire
    Je dispose d'un dictionnaire :

    [{'Var_1' : 12; 'Var_2' : 15;....

    Le nom des variables est construit selon :
    Var_ + CB (CB est une suite de caractères non prévisibles à l'avance).

    Ensuite, je souhaite récupérer le contenu de ces variables.

    Il faut d'abord que je construise le nom de la variable :
    Ensuite, j'essaie de récupérer le contenu de la variable, mais là, je n'y arrive pas :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    valeur = float(var)
    Comment faire ?

  2. #2
    Membre éprouvé Avatar de anthyme
    Homme Profil pro
    Inscrit en
    Mars 2004
    Messages
    1 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 559
    Par défaut
    Citation Envoyé par senacle
    Je dispose d'un dictionnaire :

    [{'Var_1' : 12; 'Var_2' : 15;....

    Le nom des variables est construit selon :
    Var_ + CB (CB est une suite de caractères non prévisibles à l'avance).

    Ensuite, je souhaite récupérer le contenu de ces variables.

    Il faut d'abord que je construise le nom de la variable :
    Ensuite, j'essaie de récupérer le contenu de la variable, mais là, je n'y arrive pas :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    valeur = float(var)
    Comment faire ?
    Je me demande si tu sais exactement comment manipuler les dictionnaires, en tout cas pour tes 2 derniere ligne de code il faut tronqué la partie contenant le "var_" donc faire comme dans cet exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    >>> a = "var_1.24329"
    >>> float(a[4:])
    1.24329
    mais bon a priori vu comment tu stoc tes données (que je n'ai pas trop compris ) je pense que tu devrai utiliser des listes à la place :

    soit tu ajoute toutes les variables d'un coup :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    list = [var1,var2,var3,var4,var5,...]
    ou une part une :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    list = []
    list.append(var1)
    list.append(var2)
    ...
    et tu pourras acceder a une variable comme cela :

    ou a toutes les variables l'une apres l'autre comme cela :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    for var in list:
        #Traitement

  3. #3
    Membre émérite

    Profil pro
    Inscrit en
    Août 2004
    Messages
    723
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 723
    Par défaut
    Pour accéder aux variables d'un dictionnaire c'est
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    dic = {...} #à remplir comme tu veux
    var = dic["blablabla"] #"blablabla" étant la clé que tu as assignée à la valeur en question

  4. #4
    Membre éclairé
    Homme Profil pro
    développeur
    Inscrit en
    Octobre 2004
    Messages
    480
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : développeur
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Octobre 2004
    Messages : 480
    Par défaut
    Je vais essayer d'être plus clair.
    J'ai un formulaire dans lequel je dois construire des champs dont le nom est du genre :
    var_1254879
    où 'var_' est fixe et où 1254879 est construit au fur et à mesure sans connaître la valeur d'avance (c'est une suite de 13 chiffres), qu'on appellera CB.
    Lorsque je poste le formulaire, j'envoie var_1254879 ainsi que 1254879.

    Dans mon traitement python, je dois faire des boucles pour traiter les données.
    Comme je ne connais pas d'avance le nom des variables, j'ai besoin de construire ce nom (donc 'var_' + str(CB)).
    Et ensuite, je dois récupérer la valeur de la variable.

    La bonne solution est donc celle d'oiffrig.

    Par contre, on peut semble-t-il accéder aux valeurs des clés d'un dictionnaire de deux façons.
    Le dictionnaire est :
    dic = {'tbr' : 0.46, 'var_1254879' : 1.26...}
    Pour récupérer la valeur contenu dans tbr, dic.tbr fonctionne
    et pour récupérer la valeur de var_1254879, dic['var_1254879'] fonctionne aussi.

    Une façon est-elle plus rapide que l'autre ?
    Quelles différences entre elles ?

  5. #5
    Membre émérite

    Profil pro
    Inscrit en
    Août 2004
    Messages
    723
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 723
    Par défaut
    L'accès par dic.tbr ne fonctionne pas (du moins chez moi)

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

Discussions similaires

  1. Aide pour la fonction recherche et dictionnaire de variable
    Par Esmax dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 13/09/2010, 21h47
  2. Variables de type dictionnaire
    Par rambc dans le forum Débuter
    Réponses: 4
    Dernier message: 09/06/2010, 21h02
  3. Variables de type dictionnaire
    Par rambc dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 09/06/2010, 18h53
  4. Correspondance Variable (Dictionnaire ?)
    Par kinji dans le forum Débuter
    Réponses: 2
    Dernier message: 24/09/2007, 13h14
  5. Une variable dans un dictionnaire, et faire recherche
    Par ploop dans le forum Général Python
    Réponses: 4
    Dernier message: 30/06/2007, 19h01

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