Bonsoir,
j'ai la structure de fichiers suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
+ DOSSIER :module
     __init__.py
     fileA.py
     fileB.py
     + DOSSIER : tests
          + DOSSIER : options
               test1.py
test2.py
Voici les différents codes :
__init__.py
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
#!/usr/bin/env python
 
# WARNNG : use Python 3
 
from . import fileA
fileA.py
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
#!/usr/bin/env python
 
# WARNNG : use Python 3
 
from . import fileB
fileB.py
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
#!/usr/bin/env python
 
# WARNNG : use Python 3
 
print('File B has been imported')
test2.py
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
#!/usr/bin/env python
 
# WARNNG : use Python 3
 
import module
test1.py
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
#!/usr/bin/env python
 
# WARNNG : use Python 3
 
# We must find the module.
import os
import sys
 
dir =  os.path.dirname( __file__ ) + '/../'*3
dir = os.path.normpath(dir)
sys.path.append(dir)
import module
Le dernier code fonctionne mais je trouve cela un peu sâle.

Les nouvelles spécifications permettent-elles d'utiliser quelque chose de plus simple, c'est à dire sans les modules sys et os ?

J'ai essayé from ... import module par analogie avec from . import module mais sans succès.