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 dans un nom de variable


Sujet :

Python

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 8
    Points : 6
    Points
    6
    Par défaut variable dans un nom de variable
    Bonjour à tous,
    je souhaite créer une variable avec 2 variables : je m'explique

    j'ai créé une classe Client, j'ai fais une interface graphique (Tkinter) avec des Entry (nom, prénom, ...), un bouton "OK" et quand j'appuie sur le bouton OK ca appelle la fonction enregistrer. Dans ma fonction enregistrer je veux que ca crée une instance de la classe client avec comme attribut le nom, prénom entrés dans les Entry et je veux que mon instance s'appelle nom_prenom.
    Par exemple si je rentre DUPOND dans nom et JEAN dans prénom, je veux que ca crée une instance JEAN_DUPOND de ma classe Client
    Merci, j'espère avoir été assez clair

  2. #2
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 28
    Points : 26
    Points
    26
    Par défaut
    Salut,

    j'ai déjà eû un problème similaire et il ne semble pas y avoir de solution "propre" pour modifier le nom d'une instance comme cela. D'ailleurs, ça se conçoit tout à fait : comment ferais-tu si tu avais 2 clients Jean Dupont (ce qui arrive souvent en pratique) ?

    Tu peux sans doute dans ta classe Client donner un attribut "nom_prenom", avec éventuelement un getter/setter.

    Ainsi, si c = Client('Jean Dupond")
    print c.nom_prenom te renverra "Jean Dupond" par ex.

    Tu peux aussi séparer avec 2 attributs : un pour le nom, l'autre pour le prénom.

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 8
    Points : 6
    Points
    6
    Par défaut
    Merci,
    Autrement juste pour savoir, est ce possible de créer une variable avec une chaine de caractère entrée au clavier.

  4. #4
    Nouveau membre du Club
    Inscrit en
    Octobre 2007
    Messages
    32
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 32
    Points : 37
    Points
    37
    Par défaut
    bonjour, pour ta première question, la réponse est dans la FAQ.
    Tu peux tout a fait déclarer une variable jean_dupond en concaténant jean et dupond.

    http://python.developpez.com/faq/?pa...es#GenStrDecla

    ++

Discussions similaires

  1. [Batch] Utiliser une variable dans un nom de variable ?
    Par THKKK dans le forum Scripts/Batch
    Réponses: 2
    Dernier message: 26/10/2010, 13h07
  2. Variable dans un nom de variable
    Par tombabibel dans le forum Ruby
    Réponses: 0
    Dernier message: 16/09/2010, 18h10
  3. Concaténation de variables dans un nom de variables ?
    Par debie1108 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 28/05/2007, 03h51
  4. Chochets dans un nom de variable ?
    Par MagicManu dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 08/02/2006, 15h39
  5. Nom de variable dans une autre variable
    Par lsdInside dans le forum Linux
    Réponses: 5
    Dernier message: 04/12/2004, 19h36

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