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 :

[def] surchage de fonction [Fait]


Sujet :

Python

  1. #1
    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 [def] surchage de fonction
    Bonjour!
    J'aimerai savoir si il etait possible de faire une surchage sur une fonction...
    pasque pour l'instant je fait comme ca :

    def toto(attr):
    if type(attr) = ...
    elif type (attr) = ...

    et c'est moche je trouve !!!

    n'y a til pas un meilleur moyen ???

    merci !

  2. #2
    Expert confirmé
    Avatar de Guigui_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2002
    Messages
    1 864
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2002
    Messages : 1 864
    Par défaut
    non, ce n'est pas possible. On peut contourner le problème de cette façon:

    http://www.developpez.net/forums/showthread.php?t=94295
    http://www.developpez.net/forums/vie...ight=surcharge

    (y'a sûrement d'autres sujets qui parle de la surcharge de fonction)

  3. #3
    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
    Oki merci c'est tres clair (et domage snif)

  4. #4
    Expert confirmé
    Avatar de GrandFather
    Inscrit en
    Mai 2004
    Messages
    4 587
    Détails du profil
    Informations personnelles :
    Âge : 55

    Informations forums :
    Inscription : Mai 2004
    Messages : 4 587
    Par défaut
    Si vraiment ça t'embête, il faut peut-être envisager cela :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    # -*- coding: iso-8859-1 -*-
    class Toto(object):
     
        def _run_int(self, param):
            print "Traitement d'un entier"
     
        def _run_str(self, param):
            print "Traitement d'une chaîne"
     
        def __call__(self, param):
            if type(param) == type(0):
                self._run_int(param)
            elif type(param) == type('a'):
                self._run_str(param)
            else:
                raise AttributeError
     
    toto = Toto()
    toto(1)
    toto('test')
    Peut-être un peu plus « propre », mais c'est sûr qu'en terme de concision c'est pas le top...
    FAQ XML
    ------------
    « Le moyen le plus sûr de cacher aux autres les limites de son savoir est de ne jamais les dépasser »
    Giacomo Leopardi

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

Discussions similaires

  1. Compréhension de la fonction def
    Par naugril dans le forum Général Python
    Réponses: 4
    Dernier message: 06/12/2009, 18h19
  2. Réponses: 6
    Dernier message: 31/03/2008, 09h27
  3. Fonctions exportées (DEF) mais absentes dans la DLL
    Par me_myself dans le forum Visual C++
    Réponses: 3
    Dernier message: 17/12/2007, 09h28
  4. Surchage de la fonction onClick d'un lien
    Par zizou39 dans le forum Général JavaScript
    Réponses: 13
    Dernier message: 25/01/2007, 14h47
  5. Avertissement lors surchage de fonction
    Par Neilos dans le forum C++Builder
    Réponses: 15
    Dernier message: 09/01/2005, 15h51

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