Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
python:modules_packages_import [2020/11/28 08:35] marclebrun |
python:modules_packages_import [2021/05/15 06:52] (Version actuelle) |
||
---|---|---|---|
Ligne 4: | Ligne 4: | ||
[[https://towardsdatascience.com/learn-python-modules-and-packages-in-5-minutes-bbdfbf16484e]] | [[https://towardsdatascience.com/learn-python-modules-and-packages-in-5-minutes-bbdfbf16484e]] | ||
+ | |||
+ | [[https://stackoverflow.com/questions/8953844/import-module-from-subfolder]] | ||
+ | |||
+ | <code>add __init__.py to every subfolder you are importing from</code> | ||
+ | |||
===== Exemple 1 ===== | ===== Exemple 1 ===== | ||
- | <code python DOSSIER> | + | <code python> |
#/home/marc/test | #/home/marc/test | ||
├── # app | ├── # app | ||
Ligne 23: | Ligne 28: | ||
│ │ print("Hello, I'm Controller B") | │ │ print("Hello, I'm Controller B") | ||
│ │ | │ │ | ||
- | │ ├── # __init__.py | + | │ ├── # main.py |
│ │ | │ │ | ||
- | │ │ from .main import Application | + | │ │ from .controllers.a import ControllerA |
+ | │ │ from .controllers.b import ControllerB | ||
│ │ | │ │ | ||
- | │ │ app = Application() | + | │ │ class Application: |
+ | │ │ def __init__(self): | ||
+ | │ │ self.name = "Mauricette" | ||
│ │ | │ │ | ||
- | │ └── # main.py | + | │ │ def show(self): |
- | │ | + | │ │ a = ControllerA() |
- | │ from .controllers.a import ControllerA | + | │ │ a.hello() |
- | │ from .controllers.b import ControllerB | + | │ │ b = ControllerB() |
- | │ | + | │ │ b.hello() |
- | │ class Application: | + | │ │ |
- | │ def __init__(self): | + | │ └── # __init__.py |
- | │ self.name = "Mauricette" | + | |
│ | │ | ||
- | │ def show(self): | + | │ from .main import Application |
- | │ a = ControllerA() | + | │ |
- | │ a.hello() | + | │ app = Application() |
- | │ b = ControllerB() | + | |
- | │ b.hello() | + | |
│ | │ | ||
└── # run.py | └── # run.py |