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 :

Hierarchie d'un package


Sujet :

Python

  1. #1
    Membre Expert

    Homme Profil pro
    Ing�nieur calcul scientifique
    Inscrit en
    Mars 2013
    Messages
    1 229
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes C�te d'Azur)

    Informations professionnelles :
    Activit� : Ing�nieur calcul scientifique

    Informations forums :
    Inscription : Mars 2013
    Messages : 1 229
    Par d�faut Hierarchie d'un package
    Bonjour � tous.

    Je me lance dans la distribution de l'un de mes codes sous la forme d'un package donc.

    Pour l'instant d�marrons comme suit :
    PkgTest
    ..|_setup.py
    ..|_pkgtest
    ......|_ __init__.py (fichier vide)
    ......|_foo.py

    foo.py contient :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    def test():
        print("Test")
    et setup.py :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    from setuptools import setup
     
    setup(name='pkgtest',
          packages=['pkgtest'],
          )
    J'installe ce package avec pip, je lance python puis tape ceci dans ma console :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    from pkgtest import foo
    foo.test()
    from pkgtest.foo import test
    test()
    et l� tout est OK.

    Maintenant je rajoute un peu de structure dans mes fichiers :
    PkgTest
    ..|_setup.py
    ..|_pkgtest
    .......|_ __init__.py
    .......|_examples (un dossier vide pour l'instant)
    .......|_src
    ............|_ __init__.py (fichier vide)
    ............|_foo.py

    foo.py est inchang� et setup.py devient :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    from setuptools import setup
     
    setup(name='pkgtest',
          packages=['pkgtest'],
          package_dir={'pkgtest': 'pkgtest/src'},
          )
    et dans le __init__.py que j'ai rajout�, je mets :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    from pkgtest.src import foo
    L�, fonctionne, mais
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    from pkgtest.foo import test
    ne fonctionne pas ....
    Bon si j'�cris
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    from pkgtest.src.foo import test
    �a fonctionne mais le but est de pouvoir s'affranchir d'�crire le "src" pour mes utilisateurs.

    Merci de votre aide.

  2. #2
    Expert �minent
    Homme Profil pro
    Architecte technique retrait�
    Inscrit en
    Juin 2008
    Messages
    21 772
    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 772
    Par d�faut
    Salut,

    Citation Envoy� par lg_53 Voir le message
    �a fonctionne mais le but est de pouvoir s'affranchir d'�crire le "src" pour mes utilisateurs.
    La hi�rarchie est donn�e par l'arborescence sur le filesystem... Et ma lecture de la documentation me fait dire qu'il n'est pas facile de s'en affranchir sauf par un hack plus ou moins sordide.

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

  3. #3
    Membre Expert

    Homme Profil pro
    Ing�nieur calcul scientifique
    Inscrit en
    Mars 2013
    Messages
    1 229
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes C�te d'Azur)

    Informations professionnelles :
    Activit� : Ing�nieur calcul scientifique

    Informations forums :
    Inscription : Mars 2013
    Messages : 1 229
    Par d�faut
    L'id�e n'est pas de modifier le comportement de la fonction import, mais plut�t de construire mon package de mani�re � ce qu'il ait le comportement voulu lorsque je fais un import dessus.

    Et � priori, c'est faisable au vu de ce que j'ai pu lire (mais forc�ment l� il disait pas comment faire), en mettant ce qu'il faut dans le setup.py et dans les __init__.py

    J'�re sur la toile depuis 2 jours pour essayer de comprendre comment fonctionne ces outils.
    L� je suis plut�t en train d'explorer cette piste l�, qui a l'air assez proche de mon probl�me :
    https://setuptools.readthedocs.io/en...ing-data-files

Discussions similaires

  1. Package devC++
    Par Fl0r3nt dans le forum Dev-C++
    R�ponses: 15
    Dernier message: 29/10/2003, 14h42
  2. prob avec utilisation de package
    Par martijan dans le forum Modules
    R�ponses: 13
    Dernier message: 11/07/2003, 09h37
  3. [JCreator] "package tools does not exists"
    Par snyper147 dans le forum Environnement de D�veloppement Int�gr� (EDI)
    R�ponses: 2
    Dernier message: 04/05/2003, 20h08
  4. [Packages] Probl�me d'organisation
    Par lolo... dans le forum JBuilder
    R�ponses: 5
    Dernier message: 22/04/2003, 13h05
  5. Vue Packages
    Par ced dans le forum Eclipse Java
    R�ponses: 2
    Dernier message: 01/04/2003, 08h32

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