import form
import form
DESCRIPTION.
Spécifie les modules, ou les classes et méthodes, à importer depuis la bibliothèque standard, livrée avec Python, et/ou des paquets indépendants, pour enrichir Python de nouveaux outils.
SYNTAXE.
import ⇨ appel de l’instruction [ OBLIGATOIRE ]
module ⇨ nom du module à importer [ OBLIGATOIRE ]
as ⇨ mot clé de renommage [ optionnel ]
cible ⇨ nom qui sera utilisé dans le programme pour désigner le module [ optionnel ]
from module import objet as cible
form ⇨ appel de l’instruction [ OBLIGATOIRE ]
module ⇨ nom du module contenant l'objet à importer [ OBLIGATOIRE ]
import ⇨ appel de l’instruction [ OBLIGATOIRE ]
objet ⇨ nom de l'objet à importer [ OBLIGATOIRE ]
as ⇨ mot clé de renommage [ optionnel ]
cible ⇨ nom qui sera utilisé dans le programme pour désigner l'objet [ optionnel ]
MODELES D'UTILISATION.
import module
Cherche le module module, le charge en mémoire et l'initialise en cas de besoin.
Les objets et méthodes seront appelées de la façon suivant OBJ_Nom = module.objet ( ) et OBJ_Nom.methode ( ).
import module as cible
Cherche le module module, le charge en mémoire et l'initialise en cas de besoin, puis modifie la référence d'appel (alias) en cible. Les objets et méthodes seront appelées de la façon suivant OBJ_Nom = cible.objet ( ) et OBJ_Nom.méthode ( ).
Il est possible d'importer plusieurs modules en une seule instruction, en séparant chaque nom de module par une virgule.
import tkinter , os , turtle
équivaut à :
import tkinter
import os
import turtle
import tkinter as interface , os as systeme , turtle as dessin
équivaut à :
import tkinter as interface
import os as systeme
import turtle as dessin
équivaut à :
Les modules importés doivent être présents dans le répertoire (dossier) du programme appelant, ou dans les chemins définis dans le path de Python. Ils peuvent être des modules de la bibliothèque standard, des modules proposés par d'autres auteurs ou des modules créés spécifiquement par l'utilisateur.
Il est possible d'importer uniquement certains objets (classes) et/ou méthodes d'un module en utilisant l'instruction from.
from module import as cible
Cherche dans le module module l'objet objet, le charge en mémoire, l'initialise en cas de besoin puis modifie la référence d'appel (alias) en cible. Les objets et méthodes seront appelées de la façon suivant OBJ_Nom = cible.objet ( ) et OBJ_Nom.methode ( ).
EXEMPLES.
Supposons que nous ayons créé et sauvegardé ce programme sous le nom de calculs.py,
et qu'il se trouve dans le même dossier que le programme appelant.
def FNC_Carre ( Q ) :
return Q * Q
def FNC_Racine ( Q ) :
if Q >= 0 : return Q ** .5
def FNC_Cube ( Q ) :
return Q ** 3
def FNC_Inverse ( Q ) :
if Q != 0 : return 1 / Q
Et que nous souhaitons incorporer, tout ou partie de, ce programme dans un autre programme (appelant), sans avoir à réécrire ces fonctions.
1. Pour importer tous les objets sans alias (sans renommage).
import calculs
print ( calculs.FNC_Carre ( 5 ) , end = " / " )
print ( calculs.FNC_Racine ( 16 ) , end = " / " )
print ( calculs.FNC_Cube ( 3 ) , end = " / " )
print ( calculs.FNC_Inverse ( 25 ) , end = "\n" )
retourne 25 / 4.0 / 27 / 0.04
2. Pour importer tous les objets avec alias.
import calculs as mathematique
print ( mathematique.FNC_Carre ( 5 ) , end = " / " )
print ( mathematique.FNC_Racine ( 16 ) , end = " / " )
print ( mathematique.FNC_Cube ( 3 ) , end = " / " )
print ( mathematique.FNC_Inverse ( 25 ) , end = "\n" )
retourne 25 / 4.0 / 27 / 0.04
3. Pour importer toutes les méthodes dans les noms publics.
from calculs import *
print ( FNC_Carre ( 5 ) , end = " / " )
print ( FNC_Racine ( 16 ) , end = " / " )
print ( FNC_Cube ( 3 ) , end = " / " )
print ( FNC_Inverse ( 25 ) , end = "\n" )
retourne 25 / 4.0 / 27 / 0.04
4. Importer certains objets sans alias.
from calculs import FNC_Carre , FNC_Inverse , FNC_Racine
print ( FNC_Carre ( 5 ) , end = " / " )
print ( FNC_Racine ( 16 ) , end = " / " )
print ( FNC_Inverse ( 25 ) , end = "\n" )
retourne 25 / 4.0 / 0.04
5. Importer certains objets avec alias dans les noms publics.
from calculs import FNC_Carre as MCa , FNC_Inverse as MIn , FNC_Racine as MRa
print ( MCa ( 5 ) , end = " / " )
print ( MIn ( 16 ) , end = " / " )
print ( MRa ( 25 ) , end = "\n" )
retourne 25 / 0.0625 / 5.0
L'importation d'objets et méthodes dans les noms publics (exemple 3) est fortement déconseillées pour des raisons de conflits possibles avec des noms existants et de lisibilité du script. D'une façon général, on préférera utiliser la méthode import nom_du_module sans modifier les noms, la (re)lecture du code sera beaucoup plus aisée lors des améliorations ou de la maintenance de votre programme.
Votre aide est précieuse pour améliorer ce site, alors n'hésitez pas à faire part de
Dans la LOGITHEQUE de MON PYTHON PAS A PAS
vous trouvez des suggestions de projets simples et classiques pour
ooo
TESTER - DÉCOUVRIR - PRATIQUER - APPROFONDIR - EXPLORER
ooo
la programmation récréative avec le langage PYTHON 3
avec un exemple de résolution à télécharger pour vous inspirer.