Envoyer ma solution

Exclusif Premium

Débloquez votre potentiel ! ✨

Cette session fait partie de notre programme Premium exclusif

+100h de formations exclusives
+180 exercices de code avancés
+100h de mentorats en réécriture
20 projets guidés pas à pas
Mentorats groupés hebdomadaires
Support individuel avec nos mentors

Prêt à passer au niveau supérieur ?

Découvrez tous les avantages Premium et transformez votre apprentissage dès aujourd'hui!

Inscris-toi

(c'est gratuit !)

Un compte est nécessaire pour participer aux discussions.

Créer un compte

Toutes les questions

Yoann BOIDIN

20 janvier 2026

Résolue
1 réponse

Difficultés dans la manipulation de fichiers et dossiers

Merci pour le retour Gabriel. J'ai posté cette version parfaitement conscient qu'elle n'était pas terminée et conforme. J'en commencé un training uniquement sur le sujet de la manipulation de fichiers et dossiers. Je trouve cette partie vraiment pas évidente. La transition est assez violente car d'un coup on doit avoir en tête des méthodes et fonctions qu'on a pas encore utilisée et d'ajouter tout ce qu'on a vu précédemment. Je trouve le contenu de formation en amont de ce projet un peu light pour pouvoir s'y lancer. Après je comprends aussi que cette partie n'est pas évidente à retranscrire en contenu de cours. Je me met en mode training avec gemini pendant 24h sur le sujet ;-)

bleednoski

25 octobre 2025

Résolue
0 réponses

Ok c'est bien noté!

John

17 juillet 2025

Résolue
3 réponses

Problème de gestion automatique et d'itération de fichiers

Merci, effectivement, c'est propre. Je comprends que le `mapping` est relatif à l'utilisation de dictionnaire. Par contre, je ne comprends pas ce qui ne fonctionne pas dans `Gestion automatique des fichiers non reconnus`, chez moi le script fonctionne. (Il créait 1000 fichiers dans une arborescence `download` avec 2 sous dossier et les ranges dans l'arborescence). Autre chose, le `iterdir` ne fonctionnait pas de manière récursive chez moi d'où la magouille avec le `glob(/*.*)`, une idée? ATFU, j'utilise pycharm sous mac M2. Merci beaucoup de la correction et bonne soirée.

madem

15 mai 2025

Résolue
3 réponses

Tri dynamique des fichiers avec générateur

Je partage (et je suis preneur de retour) une 3ème version pour ce projet. C'est une version "dynamique" dans le sens ou pour modifier les règles de tri, il n'y a qu'à modifier le contenu de la variable `mapping`. L'objectif était de faire le moins possible d'imbrication de `if / else / boucle en tout genre`, tout en gardant quelque chose d'à peu près lisible. En voulant "optimiser" tout ça, je suis tombé sur le principe de générateur qui m'a l'air plutôt bien adapté pour ce TP. ```python """ Project : https://www.docstring.fr/formations/le-trieur-de-fichiers/introduction-au-projet-1763/?module=13&session=1&course=1 Description : Sort the content of a directory (non recursively) """ from pathlib import Path input_directory = Path(r"C:\Users\fva\dev\learning-python-1\data_to_sort") sorted_directory = Path(r"C:\Users\fva\dev\learning-python-1\sorted_data") mapping = { "Musique": [".mp3", ".wav", ".flac"], "Videos": [".avi", ".mp4", ".gif"], "Images": [".bmp", ".png", ".jpg"], "Documents": [".txt", ".pptx", ".csv", ".xls", ".odp", ".pages"] } # create all directories : [...]/data/Musique & Other, etc .... (sorted_directory / "Other").mkdir(parents=True, exist_ok=True) for directory in mapping.keys(): (sorted_directory / directory).mkdir(parents=True, exist_ok=True) # iterate only over regular file files = [f for f in input_directory.iterdir() if f.is_file()] for file in files: # if the file extension map a specific category -> put it in the specified category, else, put it in "other" category category = next((key for key, value in mapping.items() if file.suffix in value), "Other") file.rename(sorted_directory / category / file.name) ``` Je suis preneur de tout retours / axes d'améliorations.

Sébastien

15 avril 2025

Résolue
1 réponse

Clarifications sur les variables et la gestion des extensions

Merci pour la correction, Je suis d'accord d'avoir oublié les .pdf mais les .mp3 étaient bien présents dans le dictionnaire `Musique`. Tu as changé la variable que j'avais appelée `classe` par `destination` à la fin du script. Est-ce parce que `classe` est une variable intégrée à Py ? Pourquoi ajouter `lower()` quand on récupère les extensions ? Ne sont-elles pas toujours en minuscule ? Merci et bonne suite de journée.

Jolan

13 janvier 2025

Résolue
3 réponses

Réenvoi d'un code fonctionnel

Bonjour, J'ai malencontreusement envoyé un mauvais code, on me demande d'en renvoyer un cependant je ne vois pas comment faire pour renvoyer mon code fonctionnel. Comment est-ce possible ? Bav,

Jean-Christoph GILLOT

12 novembre 2024

Résolue
2 réponses

Bonjour Gabriel. de quel doublons parles-tu ? Dans cet espce réservé au projet "Le trieur de fichier" il y a du code source de liste de course d'un projet qui n'est pas à moi. C'est normal ? A très bientôt ;)

Simplice Franc NKOUARI NSENGU

26 septembre 2024

Résolue
0 réponses

Relancer un script après un délai de 12 heures

Salut Gabriel ! J'ai bien pris connaissance de tes observations et je t'en suis entièrement connaissant. Ma préoccupation actuelle est de savoir comment peut-on relancer ce script au bout par exemple de 12 heures ? J'ai une petite idée : utiliser la fonction `sleep` du module `time`. Mais, comment faire en sorte que le script s'exécute de nouveau au bout de 43 200 secondes, soit 12 heures, par exemple ? En attendant ta réponse que j'espère recevoir, Bien à toi, Franck.

UGGY

9 septembre 2024

Résolue
1 réponse

Question de Eric

Bonsoir Thibault, Merci pour la consolidation de mon code et les explications. J'ai une remarque : Pourquoi avoir ajouté l'extension ".pdf" alors que le fichier "data" n'en contient pas, en remplacement de "autres et Divers" ? Cdlt, Eric

Ce n'est pas fini...

Tu as complété % du parcours 🔥

Termine l'intégralité de la formation pour pouvoir débloquer ton attestation de réussite.

Rechercher sur le site

Inscris-toi à Docstring

Pour commencer ton apprentissage.

Tu as déjà un compte ? Connecte-toi.