« Programmation Python/Modules » : différence entre les versions
Contenu supprimé Contenu ajouté
m <source> -> <syntaxhighlight> (phab:T237267) |
|||
Ligne 20 :
Pour ce faire, utiliser la commande "import" :
<
import os
import codecs
</syntaxhighlight>
Sur la même ligne (syntaxe déconseillée<ref>https://www.python.org/dev/peps/pep-0008/#imports</ref>) :
<
import os, codecs
</syntaxhighlight>
Ou encore en sélectionnant certains ou tous les éléments d'un fichier :
<
from pywikibot import *
</syntaxhighlight>
A noter : cette dernière méthode est dangereuse, car des objets du module portant le même nom que des objets du programme peuvent s'écraser l'un l'autre. Mieux vaut donc les nommer explicitement :
<
from pywikibot import pagegenerators
</syntaxhighlight>
Le module ''math'', par exemple, est fournit avec Python, et contient les définitions de nombreuses fonctions mathématiques telles que ''sinus'', ''cosinus'', ''tangente'', ''racine carrée'', etc. Pour pouvoir utiliser ces fonctions, il vous suffit d'incorporer la ligne suivante au début de votre script :
<
from math import *
</syntaxhighlight>
Dans le corps du script lui-même, vous écrirez par exemple :
Ligne 52 :
Pour créer son propre module et l'importer dans un autre fichier, il faut :
* Soit que le module existe sous la forme d'un fichier .py situé dans le même dossier que le fichier qui l'importe. Exemple :
<
import Fichier1
Fichier1.fonction1()
</syntaxhighlight>
Pour changer le préfixe :
<
import Fichier1 as F1
F1.fonction1()
</syntaxhighlight>
Pour supprimer le préfixe :
<
from Fichier1 import *
fonction1()
</syntaxhighlight>
* Soit qu'il soit dans un autre dossier du programme, contenant un fichier <code>__init__.py</code> joutant le rôle de relais en important tous fichiers situés à côté de lui, ce qui permettra à toutes les fonctions de ce dossier d'être accessibles par le nom du dossier. Exemple dans dans un dossier "lib" :
<
from Fichier1 import *
from Fichier2 import *
Ligne 76 :
__all__ = ["Fichier1", "Fichier2", "Fichier3"]
</syntaxhighlight>
Dans le dossier parent :
<
import lib
fonction1()
</syntaxhighlight>
== Liste des modules standards ==
Ligne 98 :
=== Exemple du module "math" ===
<
# Démo : utilisation des fonctions du module <math>
Ligne 107 :
print 'racine carrée de', nombre, '=', sqrt(nombre)
print 'sinus de', angle, 'radians', '=', sin(angle)
</syntaxhighlight>
L'exécution de ce script provoque l'affichage suivant :
Ligne 154 :
<ol>
<li>
<
# Conversion de miles/heure en km/h et m/s
Ligne 164 :
# affichage :
print mph, "miles/heure =", kmph, "km/h, ou encore", mps, "m/s"
</syntaxhighlight>
</li>
<li>
<
# Périmètre et Aire d'un triangle quelconque
Ligne 184 :
print "Longueur des côtés =", a, b, c
print "Périmètre =", d*2, "Aire =", s
</syntaxhighlight>
</li>
Ligne 190 :
<li>
<
# Entrée d'éléments dans une liste
Ligne 203 :
# affichage de la liste :
print tt
</syntaxhighlight>
</li>
</ol>
|