Trieur de fichier
Fermé
Alain_de_loin
-
12 mai 2022 à 13:15
jee pee Messages postés 40647 Date d'inscription mercredi 2 mai 2007 Statut Modérateur Dernière intervention 9 janvier 2025 - 13 mai 2022 à 11:15
jee pee Messages postés 40647 Date d'inscription mercredi 2 mai 2007 Statut Modérateur Dernière intervention 9 janvier 2025 - 13 mai 2022 à 11:15
A voir également:
- Trieur de fichier
- Fichier rar - Guide
- Comment réduire la taille d'un fichier - Guide
- Comment ouvrir un fichier epub ? - Guide
- Ouvrir fichier .bin - Guide
- Fichier host - Guide
3 réponses
mamiemando
Messages postés
33459
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
8 janvier 2025
7 813
12 mai 2022 à 13:24
12 mai 2022 à 13:24
Bonjour,
Le problème c'est que ton message est trop vague pour que nous puissions t'aider.
Bonne chance
Le problème c'est que ton message est trop vague pour que nous puissions t'aider.
- Sur quel critère veux-tu trier les fichiers ?
- Quels sont les paramètres d'entrée (le dossier à trier ?), les éventuels résultats de sortie ?
- As-tu commencé à écrire du code, et si oui peux-tu le partager ?
Bonne chance
# Le but est de crée un script pour ranger automatiquement des fichiers # dans le répertoire "C:\\Users\\default\\Downloads\\". Nous les trireons avec leur extenstions. import os import time # On definit une liste contenant les répertoires et les noms names_and_paths = { "C:\\Users\\default\\Downloads\\Excutables": "Executables", "C:\\Users\\default\\Downloads\\Fichers Texte": "Fichiers Texte", } def create_folders(folder, name_of_folder): try: if not os.path.exists(folder): # On crée le répertoire os.makedirs(folder) print(f'Création du fichier "{name_of_folder}" en cours...') time.sleep(3) print('Répertoire crée | ~ |') else: print(" \n ") # Si le dossier est déjà présent dans le dossier "Downloads" on traite l'erreur : except FileExistsError: print(' \n ') # On fait une boucle qui va, pour les arguments (folder, name_of_folder) dire que l'on veut prendre les objets # du dictionnaire 'names_and_paths' et répéter cette boucle autant de fs qu'il y a d'objets dans le dictionnaire. for (folder, name_of_folder) in names_and_paths.items(): create_folders(folder, name_of_folder)
jee pee
Messages postés
40647
Date d'inscription
mercredi 2 mai 2007
Statut
Modérateur
Dernière intervention
9 janvier 2025
9 482
Modifié le 13 mai 2022 à 11:31
Modifié le 13 mai 2022 à 11:31
Bonjour,
Plutôt que trier, j'utiliserais le terme classer. Classer (ou ranger ou déplacer) des fichiers vers un répertoire suivant leur type.
Là tu as créé les répertoires de destination. Il te faut donc faire une boucle sur la liste des fichiers du répertoire à traiter et les déplacer s'ils sont d'un type traité.
Voilà un exemple :
Avec 2 façons différentes de traiter le type de fichier. Je pense que dans ton dictionnaire, tu devrais avoir les extensions à traiter : .txt, .exe ... et que cette extension devrait être la clé du dictionnaire, et le nom du répertoire la valeur.
Plutôt que trier, j'utiliserais le terme classer. Classer (ou ranger ou déplacer) des fichiers vers un répertoire suivant leur type.
Là tu as créé les répertoires de destination. Il te faut donc faire une boucle sur la liste des fichiers du répertoire à traiter et les déplacer s'ils sont d'un type traité.
Voilà un exemple :
dir_orig="D:\\Users\\default\\Downloads\\" for name in os.listdir(dir_orig): name_full=os.path.join(dir_orig, name) print(name_full) if name.endswith(".txt") and os.path.isfile(name_full): print(name_full,"is file") if os.path.splitext(name)[1] == ".txt" and os.path.isfile(name_full): print(name_full,"is file")
Avec 2 façons différentes de traiter le type de fichier. Je pense que dans ton dictionnaire, tu devrais avoir les extensions à traiter : .txt, .exe ... et que cette extension devrait être la clé du dictionnaire, et le nom du répertoire la valeur.
Modifié le 29 mai 2022 à 17:29
Quand on lance le script, ça crée un dossier (s'il n'est pas déjà là), par exemple pour les exécutables ou les , etc... Puis on détecte s'il y a des fichiers dans le répertoire , et si oui, on les trie dans le(s) dossier(s) créé(s) au préalable (en utilisant par exemple ).
J'aimerais vous partager mon code, or je ne suis pas sur le bon ordinateur et je ne suis pas chez moi.
Je vous enverrai le code ce soir.