Modules et librairies

Pourquoi des librairies ou des modules ?

Python contient déjà des fonctions natives, par exemple :

print("Hello world!")

Mais afin de ne pas alourdir le programme ou ne pas réserver trop de noms de fonctions, certaines fonctions ne peuvent pas être directement appelées sous Python.

Ces fonctionnalités sont présentes dans des modules, c'est à dire un fichier code contenant ces fonctions, que l'on appelle au besoin.

Utiliser un module

Par exemple, la fonction cosinus existe et se nomme "cos". Mais si vous l'appelez, vous rencontrez une erreur :

>>>cos(0)
NameError: name 'cos' is not defined				

La fonction cosinus existe, mais elle est contenue dans le module "math". Il faut donc d'abord appeler ce module pour exploiter les fonctions qu'il contient.

On importe un module. Ensuite il faudra appeler les fonctions en précisant qu'elles sont contenues dans ce module de la sorte : module.fonction(...)

import math
>>>math.cos(0) #On appelle la fonction "cos" du module "math"
1.0

Les modules disponibles

Les modules disponibles peuvent être connus sur EduPython en tappant "import" et faisant ctrl+espace.

En physique, on utilisera notamment (non exhaustif !) :

  • math : pour avoir accès à des fonctions de math (!)

  • random : pour générer des nombres aléatoires

  • numpy : pour générer des tableaux

  • matplotlib : pour tracer des graphiques

Modules personnels

Vous pouvez-vous même créer un module et y créer vos fonctions, et les appeler dans d'autres programmes. En réalité, un module, c'est un fichier python comme un autre, qui définie des fonctions.

Un fichier (aussi appelé module) python contient et définie des fonctions.

On souhaite importer ces fonctions dans un fichier pour ne pas avoir à les ré-écrire.

L'appel se fait ainsi en début de programme :

from nomdumodule import nomdelafonction #Pour importer qu'une fonction du module
from nomdumodule import * #Pour importer toutes les fonctions du module
  • Les deux fichiers doivent être dans le même dossier ; ou alors il faut préciser le lien relatif entre les deux.

  • Ne pas préciser l'extension ".py" du module importé

Attention, le chemin relatif s'écrit avec des points "." en python.

Sur windows, le dossier "modules" contient le fichier fonction.py donne "modules\fonction.py" ; en python ça donne "modules.fonction"

Librairies (package)

On parle également de librairies ou bibliothèque (package en anglais). Une librairie est un ensemble de modules.

Pour la suite, sauf mention particulière, on parlera de module pour désigner des fonctions contenus des fichiers externes.

Last updated

Was this helpful?