Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Défi : Recherche de Fichiers Récursive | Récursivité et Fonctions Lambda
Tutoriel sur les Fonctions Python

bookDéfi : Recherche de Fichiers Récursive

Travail avec des dictionnaires imbriqués

Les dictionnaires peuvent contenir d'autres dictionnaires, ce qui est utile pour représenter des données hiérarchiques comme un système de fichiers.

  • Les clés sont des noms de fichiers ou de dossiers ;
  • "file" signifie que l'élément est un fichier ;
  • Un dictionnaire imbriqué signifie que l'élément est un dossier.

Utiliser items() pour itérer sur les paires clé–valeur.

1234567
file_system = { "home": {"resume.pdf": "file", "notes.txt": "file"}, "etc": {"config.yaml": "file"} } for name, content in file_system.items(): print(name, "->", content)
copy

Utiliser isinstance(content, dict) pour vérifier si une valeur représente un dossier :

12345678910
file_system = { "home": {"resume.pdf": "file"}, "config.yaml": "file" } for name, content in file_system.items(): if isinstance(content, dict): print(name, "is a folder") else: print(name, "is a file")
copy
Tâche

Swipe to start coding

Pour vérifier si un fichier spécifique existe dans un dictionnaire imbriqué, implémentez une fonction récursive file_exists :

  1. Parcourez le dictionnaire avec items().
  2. Si content est "file" et que name correspond à target, retournez True.
  3. Si content est un dossier (isinstance(content, dict)), appelez récursivement file_exists.
  4. Si l'appel récursif retourne True, propagez True.
  5. Si rien ne correspond après avoir vérifié tous les niveaux, retournez False.

Solution

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 5. Chapitre 2
single

single

Demandez à l'IA

expand

Demandez à l'IA

ChatGPT

Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion

close

Awesome!

Completion rate improved to 4.17

bookDéfi : Recherche de Fichiers Récursive

Glissez pour afficher le menu

Travail avec des dictionnaires imbriqués

Les dictionnaires peuvent contenir d'autres dictionnaires, ce qui est utile pour représenter des données hiérarchiques comme un système de fichiers.

  • Les clés sont des noms de fichiers ou de dossiers ;
  • "file" signifie que l'élément est un fichier ;
  • Un dictionnaire imbriqué signifie que l'élément est un dossier.

Utiliser items() pour itérer sur les paires clé–valeur.

1234567
file_system = { "home": {"resume.pdf": "file", "notes.txt": "file"}, "etc": {"config.yaml": "file"} } for name, content in file_system.items(): print(name, "->", content)
copy

Utiliser isinstance(content, dict) pour vérifier si une valeur représente un dossier :

12345678910
file_system = { "home": {"resume.pdf": "file"}, "config.yaml": "file" } for name, content in file_system.items(): if isinstance(content, dict): print(name, "is a folder") else: print(name, "is a file")
copy
Tâche

Swipe to start coding

Pour vérifier si un fichier spécifique existe dans un dictionnaire imbriqué, implémentez une fonction récursive file_exists :

  1. Parcourez le dictionnaire avec items().
  2. Si content est "file" et que name correspond à target, retournez True.
  3. Si content est un dossier (isinstance(content, dict)), appelez récursivement file_exists.
  4. Si l'appel récursif retourne True, propagez True.
  5. Si rien ne correspond après avoir vérifié tous les niveaux, retournez False.

Solution

Switch to desktopPassez à un bureau pour une pratique réelleContinuez d'où vous êtes en utilisant l'une des options ci-dessous
Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 5. Chapitre 2
single

single

some-alt