Importer des dépendances

Nous avons créé dans le document précédent une fonction généraliste qui peut être utilisée dans plusieurs contextes. Pour cela, nous devons créer un module, c'est à dire un fichier texte contenant du code Python afin qu'il soit utilisé dans différents contextes.

Le répertoire notebook contient un fichier helpers.py destiné à ces ressources. Ce fichier est dans un répertoire wblib. Ce repertoire est plus précisemment un package. Un package est un répertoire contenant un fichier __init__.py vide et des modules.

Copiez le code de la fonction duration_for du document Introduction fonctions dans ce module. Ce module est donc une bibliothèque, ou lib.

Pour utiliser les ressources de cette lib, il faut l'importer dans le module courant. Cela va se faire par l'instruction import. La méthode est présentée en formation.


In [1]:
import wblib.helpers

print(wblib.helpers.duration_for(2))


14

In [2]:
from wblib import helpers

print(helpers.duration_for(2))


14

In [3]:
import wblib.helpers as h

print(h.duration_for(2))


14

Notez que cette instruction dépend du répertoire de travail de Python.

Recharger une dépendance

Une lib ne peut être importée qu'une seule fois. Si vous en modifiez le contenu, il faut la recharger. Recharger une lib se fait de la manière suivante :


In [2]:
import importlib
importlib.reload(helpers)


Out[2]:
<module 'helpers' from '/Users/dad3zero/workspace/formations/training-python/workbooks_correction/helpers.py'>

Notez que recharger une lib est nécessaire dans un Jupyter Notebook ou dans un shell intéractif (et donc iPython).