17.12.2012 Views

Programmation PYTHON - Zenk - Security - Repository

Programmation PYTHON - Zenk - Security - Repository

Programmation PYTHON - Zenk - Security - Repository

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

382<br />

La bibliothèque standard<br />

TROISIÈME PARTIE<br />

Divers<br />

yield est utilisé pour demander un à un les e-mails au serveur IMAP. De cette<br />

manière, l’affichage du premier e-mail est instantané et seuls les e-mails affichés sont<br />

consommés dans la boucle. Ainsi, si l’argument num_display (par défaut à5) est<br />

augmenté, et si le programme offre à l’utilisateur une option pour afficher les e-mails<br />

en mode pas-à-pas et arrêter le processus, le nombre de messages n’aura pas d’impact<br />

sur les performances de la fonction get_mails.<br />

Extension<br />

Ce système de prélecture peut être couplé à un système local de filtres, en charge de<br />

déplacer sur le serveur les messages dans des sous-dossiers en fonction de règles sur le<br />

contenu du message.<br />

Cette série d’exercices s’achève par la section Divers, qui contient un exercice de<br />

création d’un système de documentation en ligne, capable d’introspecter le code des<br />

modules pour afficher l’aide d’une classe ou d’une fonction.<br />

Exercice 14 : système de documentation en ligne des modules<br />

Description<br />

L’objectif de l’exercice 14 est de fournir un outil d’affichage des docstrings des<br />

fonctions et classes contenus dans un module python, dans l’esprit du module pydoc.<br />

Points abordés<br />

Paquet compiler.<br />

Solution<br />

Doc en ligne<br />

#!/usr/bin/python<br />

# -*- coding: utf8 -*import<br />

os.path<br />

import sys<br />

from compiler import parse<br />

from compiler import walk

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

Saved successfully!

Ooh no, something went wrong!