10:37 <discord_afpy> <chadys> dans ton cas je pense que tu as besoin d'import relatifs, qui peuvent être un peu tricky selon quel fichier tu exécutes. Sentry a une petite doc pas trop mal sur le sujet (ignore le paragraphe sur l'édition du PYTHONPATH, c'est vraiment un hack) https://sentry.io/answers/import-files-from-a-different-folder-in-python/
10:37 <discord_afpy> <chadys> De manière général pour mieux comprendre ce sujet c'est la gestion des package en python sur laquelle il faut se renseigner. Fut une époque j'avais trouvé une doc super avec plein d'exemple d'arborescences et d'import différent, mais je ne l'ai plus jamais retrouvée :/
14:31 <discord_afpy> <reinula> Merci beaucoup ! 😄
14:37 <Mindiell> moi, je pense que le bridge IRC-Discord est tout pourri :D
14:42 <entwanne> En tout cas pour les problèmes d'imports l'option -m de python est souvent utile : elle permet de faire en sorte que le paquet courant soit présent dans le path
14:53 <discord_afpy> <reinula> @Mindiell C'est parce que j'écris des pavés aussi pour mes questions.
14:55 <discord_afpy> <reinula> J'ai vu pour l'option -m mais je ne pense pas que mon prof soit ravi de faire toutes ces configs en lui envoyant mon projet. 😄
14:56 <discord_afpy> <reinula> Déjà que j'ai l'obligation de passer par un "Python package and dependency manager" (car je dois trouver un équivalent Maven).
15:02 <entwanne> Ah oui, si tu construis un paquet Python c'est autre chose : tu peux alors avoir un entrypoint et ne pas avoir besoin d'appeler python directement (donc pas de -m)
15:38 <debnet> Ca serait moi, je ferais un trick avec un hashbang ou alors un freeze du script.
15:38 <debnet> Mais bon...
15:41 <entwanne> :s
16:09 <debnet> :D
16:09 <debnet> En vrai j'ai lu la consigne @entwanne.
16:09 <debnet> Et le prof demande de packager un script Python d'un seul fichier.
16:09 <debnet> C'est un peu ridicule sachant qu'il considère un JAR comme un package.
16:10 <debnet> Alors qu'un JAR ne peut de toute façon pas s'exécuter sans JVM.
16:10 <debnet> Du coup je ne vois pas trop l'intérêt...
16:10 <entwanne> ah ben s'il n'y a qu'un seul fichier il n'y a pas de problème d'imports
16:11 <debnet> Ah peut être qu'il y en a plus maintenant, je n'ai pas vu son avancement.
16:11 <debnet> A la rigueur elle peut faire un zip.
16:12 <debnet> Il me semble que l'interpréteur peut exécuter le __init__ d'un zip.
16:12 <debnet> Ah il faut un __main__.py à la racine du zip.
16:12 <debnet> Ca peut le faire non ?
16:13 <entwanne> je ne sais plus exactement comment ça fonctionne, pas sûr qu'on puisse gérer des imports relatifs dans un zip
16:13 <debnet> Bonne question.
16:15 <entwanne> en tout cas j'ai un "ImportError: attempted relative import with no known parent package" sur le truc que je viens d'essayer vite fait
16:16 <entwanne> (un fichier zip avec un __main__.py et un foo.py à la racine, en tentant de faire un import de .foo dans le __main__)
16:20 <entwanne> mais avec un niveau d'indirection de plus et un __main__.py à la racine qui sert juste à appeler le truc principal, ça fonctionne
16:23 <debnet> A mon avis ça part du principe que tout ton code est dans un répertoire à part, et que seul le __main__.py est à la racine du zip.
16:27 <entwanne> ouais, le zip en lui-même ne définit pas un package, c'est plus comme un répertoire courant