Python: Modules, bibliothèques: Difference between revisions

From Wiki Cours
Jump to navigation Jump to search
Line 23: Line 23:
<source lang=python>
<source lang=python>
import bibliotheque
import bibliotheque
print bibliotheque.fonction(argument)
print(bibliotheque.fonction(argument))
print bibliotheque.constante
print(bibliotheque.constante)
</source>
</source>
ou bien en utilisant un nom raccourci
ou bien en utilisant un nom raccourci
<source lang=python>
<source lang=python>
import bibliotheque as bib
import bibliotheque as bib
print bib.fonction(argument)
print(bib.fonction(argument))
</source>
</source>
ou en important uniquement la fonction voulue
ou en important uniquement la fonction voulue
<source lang=python>
<source lang=python>
from bibliotheque import fonction
from bibliotheque import fonction
print fonction(argument)
print(fonction(argument))
</source>
</source>
ou encore, on importe toutes les fonctions de la bibliothèque
ou encore, on importe toutes les fonctions de la bibliothèque
<source lang=python>
<source lang=python>
from bibliotheque import *
from bibliotheque import *
print fonction(argument)
print(fonction(argument))
</source>
</source>
Un exemple simple pour récupérer le nombre <math>\pi</math> défini comme '''pi''' dans la bibliothèque '''math'''
Un exemple simple pour récupérer le nombre <math>\pi</math> défini comme '''pi''' dans la bibliothèque '''math'''
<source lang=python>
<source lang=python>
import math
import math
print math.pi
print(math.pi)
</source>
</source>
Une fois les bibliothèques importées, il n'y a plus besoin de les importer de nouveau.
Une fois les bibliothèques importées, il n'y a plus besoin de les importer de nouveau.
Line 56: Line 56:
import math
import math
math.pi = -1.0
math.pi = -1.0
print math.pi
print(math.pi)
reload(math)
reload(math)
print math.pi
print(math.pi)
</source>
</source>



Revision as of 11:48, 6 September 2016

<--Sommaire

Généralités

Le nom du module est déterminé par le nom des fichiers de la forme module.py. Un module crée un 'espace de nommage' qui correspond au nom du module.

import module
print(module.fonction(10))

Par convention, on préfixe d'un caractère souligné _ les fonctions, variables et classes destinées à être utilisées dans le fonctionnement interne du module mais pas par l'utilisateur. L'utilisateur peut toujours accéder à ces données mais un import global par la commande

from module import *

n'importera pas les noms ainsi préfixés.

Par convention, les méthodes spéciales de Python sont de la forme __nom__ avec deux caractères soulignés avant et après le nom.

Syntaxe d'importation des modules

On rappelle les méthodes d'import d'une fonction depuis une bibliothèque ou un module: Import de l'espace de nom de la bibliothèque:

import bibliotheque
print(bibliotheque.fonction(argument))
print(bibliotheque.constante)

ou bien en utilisant un nom raccourci

import bibliotheque as bib
print(bib.fonction(argument))

ou en important uniquement la fonction voulue

from bibliotheque import fonction
print(fonction(argument))

ou encore, on importe toutes les fonctions de la bibliothèque

from bibliotheque import *
print(fonction(argument))

Un exemple simple pour récupérer le nombre défini comme pi dans la bibliothèque math

import math
print(math.pi)

Une fois les bibliothèques importées, il n'y a plus besoin de les importer de nouveau. Si besoin (rare en pratique), on peut les recharger ou éliminer l'espace de nom ainsi créé par les commandes

reload module
del module

Par exemple

import math
math.pi = -1.0
print(math.pi)
reload(math)
print(math.pi)

Aide

On peut faire afficher dans l'output la documentation d'une bibliothèque par la fonction help():

help(bibliotheque)