Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > fr.comp.lang.python > #3353
| From | Benoit Izac <use.reply.to@INVALID.ADDRESS> |
|---|---|
| Newsgroups | fr.comp.lang.python |
| Subject | Re: boucle dans fonction récursive... |
| Date | 2020-06-15 23:56 +0200 |
| Message-ID | <87v9js9eo9.fsf@izac.org> (permalink) |
| References | <356860d9-d583-4b5c-9248-24ea6d8ca0fdo@googlegroups.com> |
Bonjour,
Le 15/06/2020 à 22:04, sideley@yahoo.com a écrit dans le message
<356860d9-d583-4b5c-9248-24ea6d8ca0fdo@googlegroups.com> :
> Je programme une petite routine de copie récursive de fichiers qui
> consiste à déplacer tous les fichiers dans une arborescence vers un
> autre endroit. Il se trouve que la boucle <for...in> a un comportement
> inattendu: si le premier sous répertoire (de premier niveau dans
> l'arborescence) obtenu par listdir() est vide (ou devenu vide après le
> déplacement de son contenu) alors il s'arrête, Il n'y a pas de passage
> à l'élément souvent du répertoire. Avez vous une explications ?
> J'utilise WinPy 3.7.7. Ci dessous les lignes de codes:
>
> import os, shutil, pathlib
> def copie(dossier,rep_dest):
^^^^^^^
> contenu_rep = os.listdir(dossier)
> for elm in contenu_rep:
> chemin = dossier + '/' + elm # dossier a été modifié
^^^^^^^
> if os.path.isdir(chemin):
> dossier = chemin # <= l'erreur
^^^^^^^
Tu utilises le même nom de variable qu'au dessus donc, à la boucle
suivante, dossier n'est plus celui passé en paramètre de copie().
> copie(dossier ,rep_dest)
copie(chemin, rep_dest)
> elif os.path.isfile(chemin) and (dossier != rep_dest):
> shutil.move(chemin, rep_dest)
>
> def prog ():
> dossier = input('Entrez le répertoire à scanner ')
> rep_dest = input('Rép destinataire ? ')
> copie(dossier,rep_dest)
> print ('\n Fait')
> return 1
--
Benoit Izac
Back to fr.comp.lang.python | Previous | Next — Previous in thread | Next in thread | Find similar
boucle dans fonction récursive... sideley@yahoo.com - 2020-06-15 13:04 -0700
Re: boucle dans fonction récursive... Benoit Izac <use.reply.to@INVALID.ADDRESS> - 2020-06-15 23:56 +0200
Re: boucle dans fonction récursive... Artis Sideley <sideley@yahoo.com> - 2020-06-15 15:28 -0700
Re: boucle dans fonction récursive... Pierre Maurette <maurette.pierre@free.fr> - 2020-06-16 07:15 +0200
csiph-web