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 :

Import Relatif de Module [Python 3.X]


Sujet :

Python

  1. #1
    Membre averti
    Homme Profil pro
    Ing�nieur validation
    Inscrit en
    Ao�t 2018
    Messages
    8
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 66
    Localisation : France, Paris (�le de France)

    Informations professionnelles :
    Activit� : Ing�nieur validation
    Secteur : Industrie

    Informations forums :
    Inscription : Ao�t 2018
    Messages : 8
    Par d�faut Import Relatif de Module
    Bonjour,
    Je cherche � utiliser un m�me module pour deux programmes,
    mais je ne sais pas faire suivant cette structure:

    myprojects

    -- Myproject_1
    ----- MyprojectMain_1.py ( from Commun.Subprogram_1 import calcul_1)

    -- Myproject_2
    ----- MyprojectMain_2.py ( from Commun.Subprogram_1 import calcul_1)

    -- Commun
    ----- Subprogram_1.py (def calcul_1()
    ----- Subprogram_2.py


    Existe-t-il une solution pour eviter de dupliquer le dossier "Commun"?

    Les deux exemples ci-dessous correspondent � une fa�on de faire, mais qui me parait complexe.

    d'avance merci.

    --------------------------------

    Je sais faire, mais cela duplique le dossier "Commun".

    myprojects


    -- Myproject_1
    ----- MyprojectMain_1.py ( from Commun.Subprogram_1 import calcul_1)

    -------- Commun
    ----------- Subprogram_1.py (def calcul_1()
    ----------- Subprogram_2.py

    -- Myproject_2
    ------- MyprojectMain_2.py ( from Commun.Subprogram_1 import calcul_1)

    -------- Commun
    ----------- Subprogram_1.py (def calcul_1()
    ----------- Subprogram_2.py

    --------------------------------

    Dans le m�me esprit, j'ai besoin d'appeler une fonction de MyprojectMain_2.py depuis MyprojectMain_1.py,
    Ce qui ferait:

    myprojects

    -- Myproject_1
    ----- MyprojectMain_1.py ( from Commun.Subprogram_1 import calcul_1 )
    ( from Myproject_2.yprojectMain_2 import toto )

    -------- Commun
    ----------- Subprogram_1.py (def calcul_1()
    ----------- Subprogram_2.py


    -------- Myproject_2
    ----------- MyprojectMain_2.py ( from Commun.Subprogram_1 import calcul_1 )
    ( def toto(): )

    ----------- Commun
    ---------------- Subprogram_1.py (def calcul_1()
    --------------- Subprogram_2.py
    Fichiers attach�s Fichiers attach�s

  2. #2
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ing�nieur d�veloppement logiciels
    Inscrit en
    F�vrier 2006
    Messages
    12 850
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activit� : Ing�nieur d�veloppement logiciels
    Secteur : A�ronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : F�vrier 2006
    Messages : 12 850
    Billets dans le blog
    1
    Par d�faut
    Bonjour
    Citation Envoy� par JPCheval Voir le message
    Je cherche � utiliser un m�me module pour deux programmes,
    mais je ne sais pas faire suivant cette structure:

    myprojects

    Myproject_1
    MyprojectMain_1.py ( from Commun.Subprogram_1 import calcul_1)

    Myproject_2
    MyprojectMain_2.py ( from Commun.Subprogram_1 import calcul_1)

    Commun
    Subprogram_1.py (def calcul_1()
    Subprogram_2.py


    Existe-t-il une solution pour eviter de dupliquer le dossier "Commun"?
    Tu peux positionner "Commun" plus haut dans l'arborescence, et cr�er des liens symboliques dans tes deux projets. Ou bien imaginons que tu aies l'arborescence suivante
    - Commun
    - Myprojetc1
    - Myproject2
    Dans chacune des Main tu rajoutes ".." � sys.path ce qui leur permettra � chacun de voir le dossier "Commun" situ� (de leur point de vue) un niveau au dessus.
    Mon Tutoriel sur la programmation �Python�
    Mon Tutoriel sur la programmation �Shell�
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les diff�rentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

  3. #3
    Expert �minent
    Homme Profil pro
    Architecte technique retrait�
    Inscrit en
    Juin 2008
    Messages
    21 774
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activit� : Architecte technique retrait�
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 774
    Par d�faut
    Salut,

    Citation Envoy� par JPCheval Voir le message
    Existe-t-il une solution pour eviter de dupliquer le dossier "Commun"?
    Est-ce que vous dupliquez les modules standards tel que sys ou os que vous utilisez certainement depuis plusieurs programmes o� qu'ils soient? Non. Donc il existe dans Python une m�canique qui permet de faire ce genre de choses.

    Si �a existe, on en parle certainement dans des tutos. Le tuto. tout en haut de la liste des tutos � consulter est celui qui est livr� avec Python. Sa table des mati�res indique un chapitre sur les modules qui raconte comment sont import�s les modules standards et le r�le de sys.path pour trouver le reste.

    Vous constaterez qu'il y a plusieurs solutions pour r�pondre � votre question: techniquement, toutes fonctionnent, en choisir une se fera suivant des crit�res non techniques (et on ne choisira pas pour vous).

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  4. #4
    Membre averti
    Homme Profil pro
    Ing�nieur validation
    Inscrit en
    Ao�t 2018
    Messages
    8
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 66
    Localisation : France, Paris (�le de France)

    Informations professionnelles :
    Activit� : Ing�nieur validation
    Secteur : Industrie

    Informations forums :
    Inscription : Ao�t 2018
    Messages : 8
    Par d�faut Je vais voir les tutos indiqu�s
    Bonjour,
    Merci pour vos r�ponses.
    Je vais regarder cette notion sys.path que je ne maitrise pas.
    Mais avec le lien sur les tutos, je devrais me trouver mon bonheur.
    Je vous tiens au courant tr�s rapidement pour cl�turer cette discution.

  5. #5
    Membre averti
    Homme Profil pro
    Ing�nieur validation
    Inscrit en
    Ao�t 2018
    Messages
    8
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 66
    Localisation : France, Paris (�le de France)

    Informations professionnelles :
    Activit� : Ing�nieur validation
    Secteur : Industrie

    Informations forums :
    Inscription : Ao�t 2018
    Messages : 8
    Par d�faut Resolu par abandon
    Bonjour,
    Je close la discussion, mais je trouve que le langage Python n'est pas suivant ma compr�hension, pr�t � g�rer des sous programme commun � plusieurs projet.
    Pour simplifier j'ai dupliquer les sous-programmes en trois endroit et e g�rer la mise � jour des "folder" identique � travers SVN.
    Beaucoup de manipulation pour quels que chose que me parait �tre tr�s Basic.
    Encore Merci pour votre soutient.

  6. #6
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ing�nieur d�veloppement logiciels
    Inscrit en
    F�vrier 2006
    Messages
    12 850
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activit� : Ing�nieur d�veloppement logiciels
    Secteur : A�ronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : F�vrier 2006
    Messages : 12 850
    Billets dans le blog
    1
    Par d�faut
    Citation Envoy� par JPCheval Voir le message
    je trouve que le langage Python n'est pas suivant ma compr�hension, pr�t � g�rer des sous programme commun � plusieurs projet.
    Hum... C'est pour �a que Python est un des langages les plus populaires.

    Citation Envoy� par JPCheval Voir le message
    Beaucoup de manipulation pour quels que chose que me parait �tre tr�s Basic.
    Moi je dirais plut�t "encore beaucoup de choses � apprendre pour arriver enfin � faire effectivement du tr�s basique"...
    Mon Tutoriel sur la programmation �Python�
    Mon Tutoriel sur la programmation �Shell�
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les diff�rentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. [VBA-E]Exporter / importer tous les modules et frm d'un projet
    Par ouskel'n'or dans le forum Contribuez
    R�ponses: 6
    Dernier message: 16/03/2013, 18h37
  2. R�ponses: 6
    Dernier message: 22/06/2009, 08h51
  3. [VBA]Exporter / importer tous les modules et frm d'un projet
    Par ouskel'n'or dans le forum Contribuez
    R�ponses: 0
    Dernier message: 12/02/2007, 16h31
  4. [WinCVS] Importer un nouveau module
    Par kloorane dans le forum CVS
    R�ponses: 2
    Dernier message: 18/09/2006, 12h22
  5. blocage base apr�s importation d'un module
    Par voodoo dans le forum Access
    R�ponses: 3
    Dernier message: 13/10/2004, 15h15

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