17.12.2012 Views

Programmation PYTHON - Zenk - Security - Repository

Programmation PYTHON - Zenk - Security - Repository

Programmation PYTHON - Zenk - Security - Repository

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

210<br />

Éléments du langage<br />

DEUXIÈME PARTIE<br />

Importation de l’ensemble des éléments d’un module<br />

from smtplib import *<br />

Cette écriture est à proscrire sauf cas particuliers car les éléments utilisés ne sont pas<br />

clairement identifiés et entraînent une perte de visibilité des dépendances entre<br />

modules. Préférez une écriture complète vers l’élément utilisé.<br />

Importations explicites<br />

# accès à une classe du module :<br />

from smtplib import SMTP<br />

# accès au module complet<br />

# SMTP sera atteint par smtplib.SMTP<br />

import smtplib<br />

Organisation des clauses<br />

Les clauses d’importation doivent être regroupées par niveaux séparés par un saut de<br />

ligne, le plus bas niveau étant placé en premier :<br />

1 importations d’éléments des bibliothèques standards ;<br />

2 importations d’éléments de bibliothèques utilitaires ;<br />

3 importations spécifiques au projet.<br />

Exemple<br />

import os<br />

import sys<br />

from smtplib import SMTP<br />

from smtplib import SMTP_PORT<br />

from imaplib import IMAP4<br />

from MonProjet.MonModule1 import MaClasseA<br />

from MonProjet.MonModule2 import MaClasseB<br />

from MonProjet.MonModule2 import MaClasseC<br />

Si les niveaux ne contiennent qu’une seule clause, ils peuvent être regroupés.<br />

Exemple 2<br />

import os<br />

from smtplib import SMTP<br />

from MonProjet.MonModule2 import MaClasseB

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!