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 :

Héritage conditionnelle ?


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Mai 2007
    Messages
    52
    Détails du profil
    Informations personnelles :
    Âge : 46

    Informations forums :
    Inscription : Mai 2007
    Messages : 52
    Par défaut Héritage conditionnelle ?
    Bonsoir à tous,

    Voici la question tordue de la journée:
    Est-il possible en Python de construire une classe avec un héritage conditionnel d'autres classes ?
    Pour être plus précis, dans mon cas, j'ai une classe "System" qui fait appelle à la classe Frame. Or il s'est avéré que certaines personne n'ont pas Tkinter installé, ce qui aboutit à une Exception lors de l'appel de cette classe.
    Ainsi, il me serait plus pratique d'appeler la classe Frame uniquement lorsque ceci est possible plutôt que de re-créer une autre classe quasiment identique, mais sans l'héritage...

    Quelqu'un aurait-il une idée ?

    Merci par avance,
    Mickaël

  2. #2
    Membre Expert
    Homme Profil pro
    Inscrit en
    Mars 2007
    Messages
    941
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2007
    Messages : 941
    Par défaut
    Lors de l'import tu peux vérifier que la librairie est présente, et si elle ne l'est pas définir toi-même une classe 'Frame' afin que ton héritage fonctionne.

    Donc il suffit de vérifier si l'import a réussi ou non:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    try:
        from Tkinter import Frame
    except ImportError:
        class Frame:
            pass
    Ce que tu mets réellement dans ta classe Frame dépend de ce que tu veux faire si Tkinter n'est pas disponible...

  3. #3
    Membre averti
    Inscrit en
    Mai 2007
    Messages
    52
    Détails du profil
    Informations personnelles :
    Âge : 46

    Informations forums :
    Inscription : Mai 2007
    Messages : 52
    Par défaut
    EXCELLENT Dividee!

    Je n'avais pas pensé à cette méthode qui pourtant est d'une extrême évidence!

    Encore merci,
    Mickaël

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

Discussions similaires

  1. [Postgresql]Héritage
    Par lheureuxaurelie dans le forum PostgreSQL
    Réponses: 13
    Dernier message: 02/10/2008, 09h18
  2. [Héritage] Vos commentaires....
    Par Fyna dans le forum PostgreSQL
    Réponses: 3
    Dernier message: 03/05/2005, 22h10
  3. [XML Schemas]héritage multiple
    Par nicolas_jf dans le forum XML/XSL et SOAP
    Réponses: 2
    Dernier message: 10/06/2003, 12h55
  4. [Postgres] Héritage + Clés
    Par k-reen dans le forum PostgreSQL
    Réponses: 6
    Dernier message: 21/05/2003, 16h37
  5. Héritage entre Forms
    Par BarBal dans le forum Composants VCL
    Réponses: 7
    Dernier message: 29/08/2002, 17h44

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