URL: https://linuxfr.org/forums/programmationautre/posts/python3-import-jean-paul-calderone Title: Python3 / import / Jean-Paul Calderone Authors: Xavier Faure Date: 2015年11月20日T16:03:30+01:00 License: CC By-SA Tags: python3 Score: 0 [Pour un projet Python3](https://github.com/suizokukan/eupompos), j'essaie de coller au plus près de la structure de fichiers décrite par [Jean-Paul Calderone](http://as.ynchrono.us/2007/12/filesystem-structure-of-python-project_21.html); pour l'illustrer, je reprends un post dans [un fil de discussion sur Stackoverflow](http://stackoverflow.com/questions/193161/what-is-the-best-project-structure-for-a-python-application) : ```sh Project/ |-- bin/ | |-- project | |-- project/ | |-- test/ | | |-- __init__.py | | |-- test_main.py | | | |-- __init__.py | |-- main.py | |-- setup.py |-- README ``` J'ai réécrit mon projet en tenant compte de cette structure; **mes tests sont ok** : `nosetests` me donne bien les résultats escomptés. **Paradoxalement**, je n'arrive pas à lancer le programme au complet. D'après les indications de Calderone, le point d'entrée est situé dans un exécutable(ici, un script) placé dans `bin/` et nommé, ici, `project`; voici ce qu'il dit sur cet exécutable : `Don't give [it] a .py extension, even if [it's a] Python source [file]. Don't put any code in [it] except an import of and call to a main function defined somewhere else in your projects.` Que doit donc contenir ce fichier ? Pour le moment j'ai tenté un : ```python from ..project.main import main main() ``` ... mais appeler ce programme à l'aide de `./bin/project` me conduit à cette erreur : `SystemError: Parent module '' not loaded, cannot perform relative import` Voyez-vous comment je peux me sortir de ce mauvais pas ? Merci d'avance !

AltStyle によって変換されたページ (->オリジナル) /