Supposons que j'aie la structure de répertoire suivante :
a\
__init__.py
b\
__init__.py
c\
__init__.py
c_file.py
d\
__init__.py
d_file.py
Dans le cadre de la a
du paquet __init__.py
, le c
est importé. Mais c_file.py
importations a.b.d
.
Le programme échoue en disant b
n'existe pas lorsque c_file.py
tente d'importer a.b.d
. (Et il n'existe pas vraiment, car nous étions en train de l'importer).
Comment remédier à ce problème ?
1 votes
Peut-être pourriez-vous essayer les importations relatives ? stackoverflow.com/questions/72852/
1 votes
Ceci peut aider ncoghlan_devs-python-notes.readthedocs.org/fr/latest/
0 votes
Également à titre de référence, il semble que les importations circulaires soient autorisées sous Python 3.5 (et probablement au-delà) mais pas sous 3.4 (et probablement en dessous).
1 votes
Si l'erreur d'importation est détectée, tout se passera bien tant que vous n'aurez pas besoin d'utiliser quoi que ce soit dans l'autre module avant que l'importation du premier module ne soit terminée.
0 votes
Duplicata possible de Importations circulaires (ou cycliques) en Python