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.

360<br />

La bibliothèque standard<br />

TROISIÈME PARTIE<br />

Mais with offre un mécanisme équivalent et plus concis. Il se charge de fermer l’objet<br />

fichier quoi qu’il advienne.<br />

Manipulation de fichier avec with<br />

with open(path) as f:<br />

f.write(content)<br />

Extension<br />

Un mode interactif de remplacement et un mode qui ne donne que la liste des éléments<br />

interceptés dans le texte sans le modifier peuvent rendre l’utilisation de ce programme<br />

plus souple.<br />

Exercice 6 : recopie conditionnelle et récursive de fichiers<br />

Description<br />

L’objectif de l’exercice 6 est de recopier une arborescence de fichiers et de dossiers, en<br />

parcourant récursivement les sous-dossiers. De plus, les fichiers dont l’extension est<br />

.pyc ne doivent pas être copiés.<br />

Points abordés<br />

Le module shutil.<br />

Solution<br />

Recopie conditionnelle<br />

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

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

shutil<br />

import sys<br />

def copytree(src, dst):<br />

"""Recopie une arborescence, en ignorant les fichiers .pyc"""<br />

shutil.copytree(src, dst, ignore=shutil.ignore_patterns('*.pyc'))<br />

if __name__ == '__main__':<br />

copytree(sys.argv[1], sys.argv[2])

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

Saved successfully!

Ooh no, something went wrong!