Définition d'un module

De Centre de Ressources Numériques - Labomedia
Révision de 18 octobre 2017 à 19:35 par Serge (discussion | contributions) (Serge a déplacé la page Blender:Définition d'un module vers Définition d'un module par-dessus une redirection)

(diff) ← Version précédente | Voir la version actuelle (diff) | Version suivante → (diff)
Aller à : navigation, rechercher


Définition d'un module

Modules standards

  • Python possède une grande bibliothèque standard, fournissant des outils convenant à de nombreuses tâches diverses. Ces modules sont installés avec votre version de python. Par exemple, le module time. Le nombre de modules de la bibliothèque standard peut être augmenté avec des modules spécifiques écrits en C ou en Python.
  • Une liste de la doc python

Modules spécifiques

Un module spécifique est un module qui n'est pas standard. OSC.py est un module spécifique. Vous pouvez créer ce que vous voulez, mais attention au nom pour ne pas avoir de conflits avec des modules existants.

Liste des modules installés

Créer un script module_list.py

import sys
import os
for p in sys.path:
    print os.listdir( p )

lancer dans un terminal dans le dossier avec python module_list.py

Comment marche les modules ?

  • import OSC va lire le fichier OSC.py et importer toutes les fonctions
  • import osc va lire le fichier osc.py et importer toutes les fonctions

Une fonction decode de OSC sera appelée par import OSC traduction = OSC.decode(machin)

osc est un module totalement différent et indépendant de OSC, puisque python est sensible à la casse

Où python va -t-il chercher les modules ?

Chemin de recherche des modules

Dans un terminal, ourir un prompt python

pierre@PC4:~$ python
Python 2.7.2+ (default, Oct  4 2011, 20:03:08) 
[GCC 4.6.1] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> sys.path
[, '/usr/lib/python2.7', '/usr/lib/python2.7/plat-linux2', '/usr/lib/python2.7/lib-tk', '/usr/lib/python2.7/lib-old', '/usr/lib/python2.7/lib-dynload',
'/usr/local/lib/python2.7/dist-packages', '/usr/lib/python2.7/dist-packages', '/usr/lib/python2.7/dist-packages/PIL', '/usr/lib/python2.7/dist-packages/gst-0.10',
'/usr/lib/python2.7/dist-packages/gtk-2.0', '/usr/lib/pymodules/python2.7', '/usr/lib/python2.7/dist-packages/ubuntu-sso-client']
>>> 


sys.path liste tous les dossiers où python va chercher les modules.

Python cherche dans cet ordre

  1. le répertoire courant
  2. les répertoires spécifiés par la variable d'environnement définie par un export: PYTHONPATH = ${PYTHONPATH}:/votre/chemin/vers/vos/libs
  3. le répertoire des bibliothèques python /usr/lib/python2.7 (2.7 ou votre version).