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 :

Nombres de champs dans un objet


Sujet :

Python

  1. #1
    lia
    lia est déconnecté
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    59
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 59
    Par défaut Nombres de champs dans un objet
    Bonjour à tous,

    Est-ce que quelqu'un pourrait me dire comment récupérer le nombre de champs d'un objet?
    Je suis désolée pour ma question idiote mais j'ai vraiment cherché et impossible de trouver.

    Merci pour votre aide,

    lia

  2. #2
    Membre confirmé
    Avatar de Zorro
    Inscrit en
    Août 2002
    Messages
    137
    Détails du profil
    Informations forums :
    Inscription : Août 2002
    Messages : 137
    Par défaut champs??
    Salut!!!
    Que voulez-vous dire par champs?
    un exemple de code s'impose

    Z

  3. #3
    lia
    lia est déconnecté
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    59
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 59
    Par défaut
    Par exemple je crée une classe voiture avec les champs "marque", "couleur" et "etat".
    Si je crée une instance voit1, par exemple, avec:
    voit1.marque=opel
    voit1.couleur=rouge
    voit1.etat=neuve

    Comment, plus tard dans mon code, je peux récupérer le nombre de champs à partir de l'instance voit1, c'est-à-dire 3 dans mon cas?

  4. #4
    Membre confirmé
    Avatar de Zorro
    Inscrit en
    Août 2002
    Messages
    137
    Détails du profil
    Informations forums :
    Inscription : Août 2002
    Messages : 137
    Par défaut __dict__
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    class voiture:
            def __init__(self):
                 self.marque=opel
                 self.couleur=rouge
                 self.etat=neuve
    	def __len__(self):
    	     return len(self.__dict__)
    #-----------
    # Test
    >>> voit1 = voiture()
    >>> print len(voit1)
    3
    Ou bien tous simplement

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    print len(voit1.__dict__)
    3
    Z

  5. #5
    Membre confirmé
    Avatar de Zorro
    Inscrit en
    Août 2002
    Messages
    137
    Détails du profil
    Informations forums :
    Inscription : Août 2002
    Messages : 137
    Par défaut Petite remarque
    Une petite remarque très importante:
    Tu doit déclaré tes attributs avec "self" si non tu n'auras rien, si tu veux essayer pour voir.

    Z

Discussions similaires

  1. MySQL : Best Practice : Nombre de champ dans une table
    Par Ziquet dans le forum Requêtes
    Réponses: 3
    Dernier message: 29/05/2008, 16h18
  2. Compter le nombre de champs dans un formulaire dynamique.
    Par rpgmax dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 20/02/2008, 15h12
  3. [Etat]nombre de champs dans un état
    Par spacergirly dans le forum IHM
    Réponses: 2
    Dernier message: 30/03/2007, 17h53
  4. Concaténation de plusieurs champs dans un objet
    Par bastoonet dans le forum Débuter
    Réponses: 3
    Dernier message: 27/09/2006, 11h13
  5. grand nombre de champ dans une table
    Par drinkmilk dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 21/06/2006, 18h54

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