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 :

Importer un module à l'aide d'une chaîne de caractères


Sujet :

Python

  1. #1
    Membre chevronné

    Profil pro
    Account Manager
    Inscrit en
    Décembre 2006
    Messages
    2 301
    Détails du profil
    Informations personnelles :
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Account Manager

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 301
    Points : 1 751
    Points
    1 751
    Par défaut Importer un module à l'aide d'une chaîne de caractères
    Bonjour,
    je voudrais faire quelque chose comme import "nomDuModule" au lieu de import nomDuModule. Autrement dit, je voudrais indiquer mon module avec une chaîne de caractère.

    getattr peut-il être utile ?

    Merci pour toute info.

  2. #2
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    119
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 119
    Points : 139
    Points
    139
    Par défaut
    getattr non, mais __import__ devrait faire l'affaire. Si tu importe des sous modules (package.module par exemple os.path) alors il faut faire:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    def my_import(name):
        mod = __import__(name)
        components = name.split('.')
        for comp in components[1:]:
            mod = getattr(mod, comp)
        return mod
     
    ospath=my_import('os.path')
    est a peu pres (completement?) equivalent a import os.path as ospath

  3. #3
    Membre chevronné

    Profil pro
    Account Manager
    Inscrit en
    Décembre 2006
    Messages
    2 301
    Détails du profil
    Informations personnelles :
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Account Manager

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 301
    Points : 1 751
    Points
    1 751
    Par défaut
    Merci.

    Avec la méthode ci-dessus et celle de cette autre discussion , j'ai appris à importer des programmes et des fonctionnalités sans avoir à le faire à la main (je m'en servirais peut-être pour un système de plug-in mais ceci est une autre histoire...).

    Ce n'est pas tout ça mais je dois bosser...

    Encore une fois merci à Fructidor et à dividee.

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

Discussions similaires

  1. Réponses: 8
    Dernier message: 12/02/2013, 01h08
  2. Réponses: 16
    Dernier message: 09/07/2008, 09h10
  3. Import de module en fonction d'une liste
    Par blocusius dans le forum Général Python
    Réponses: 1
    Dernier message: 25/06/2008, 04h08
  4. importer module à partir d'une chaîne de caractères
    Par j_p_g dans le forum Général Python
    Réponses: 2
    Dernier message: 23/04/2007, 15h15
  5. Réponses: 3
    Dernier message: 09/05/2002, 01h39

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