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.

250<br />

La bibliothèque standard<br />

TROISIÈME PARTIE<br />

dircmp fournit ensuite un certain nombre de méthodes :<br />

report() : affiche sur la sortie courante un comparatif entre a et b.<br />

report_partial_closure() : affiche sur la sortie courante un comparatif entre a<br />

et b et entre les sous-répertoires communs.<br />

report_full_closure() : affiche sur la sortie courante un comparatif entre a et b<br />

et entre les sous-répertoires communs, de manière récursive.<br />

Outre ces rapports, dircmp possède des attributs qui permettent de récupérer des<br />

informations sur la comparaison effectuée, soit :<br />

left_list : fichiers et sous-répertoires de a, filtrés par hide et ignore ;<br />

right_list : fichiers et sous-répertoires de b, filtrés par hide et ignore ;<br />

common : fichiers et sous-répertoires communs ;<br />

left_only : fichiers et sous-répertoires communs uniquement présents dans a ;<br />

right_only : fichiers et sous-répertoires communs uniquement présents dans b ;<br />

common_dirs : sous-répertoires communs ;<br />

common_files : fichiers communs ;<br />

common_funny : éléments communs mais dont les types diffèrent, ou éléments<br />

ayant provoqué une erreur dans os.stat() ;<br />

same_files : fichiers communs et de contenus identiques ;<br />

diff_files : fichiers communs mais de contenus différents ;<br />

funny_files : fichiers communs qui n’ont pas pu être comparés ;<br />

subdirs : dictionnaires contenant des objets de type dircmp associés aux éléments<br />

de la liste common_dirs.<br />

Comparaison des versions 2.3 et 2.4 de Python<br />

>>> import filecmp<br />

>>> comp = filecmp.dircmp('/usr/lib/python2.4', '/usr/lib/python2.3')<br />

>>> nouveautes = comp.left_only<br />

>>> disparus = comp.right_only<br />

>>> modifies = comp.diff_files<br />

>>> inchanges = comp.same_files<br />

>>> nouveautes<br />

['_LWPCookieJar.py', 'cookielib.py', 'subprocess.py', 'decimal.py',<br />

'_MozillaCookieJar.py', '_threading_local.py']<br />

>>> disparus<br />

['TERMIOS.py', 'FCNTL.py', 'pre.py']<br />

>>> modifies<br />

['weakref.py', 'ihooks.py', 'pydoc.py',..., 'whichdb.py', 'string.py']<br />

>>> inchanges<br />

['Cookie.py', 'MimeWriter.py', ..., 'user.py', 'uu.py']

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

Saved successfully!

Ooh no, something went wrong!