Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lära Challenge: Recursive File Search | Recursion and Lambda Functions
Python Functions Tutorial

Svep för att visa menyn

book
Challenge: Recursive File Search

Uppgift

Swipe to start coding

Imagine needing to check whether a specific file exists within a nested dictionary structure representing a file system. Implement a function file_exists that recursively navigates through folders (dictionary objects) and searches for a file (represented by the string "file"). Return True if the file is found; otherwise, return False.

  1. Use a for loop to iterate through all elements of the file_system dictionary using the items() method. This retrieves the key (name) and the value (content).
  2. Check if content is a file (i.e., the string "file") and if name matches target (the name of the file being searched for).
  3. If both conditions are met, return True, indicating that the file has been found.
  4. If content is not a file, check whether it is a folder. Use the isinstance() function, passing content as the first argument and dict as the second (which checks if the element is a dictionary).
  5. If content is a folder, call file_exists recursively with the necessary parameters to continue searching inside it.
  6. If the recursive call returns True, the file has been found, so return True.
  7. If no matches are found after checking all folders and files, return False.

Lösning

Switch to desktopByt till skrivbordet för praktisk övningFortsätt där du är med ett av alternativen nedan
Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 5. Kapitel 2
Vi beklagar att något gick fel. Vad hände?

Fråga AI

expand
ChatGPT

Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal

book
Challenge: Recursive File Search

Uppgift

Swipe to start coding

Imagine needing to check whether a specific file exists within a nested dictionary structure representing a file system. Implement a function file_exists that recursively navigates through folders (dictionary objects) and searches for a file (represented by the string "file"). Return True if the file is found; otherwise, return False.

  1. Use a for loop to iterate through all elements of the file_system dictionary using the items() method. This retrieves the key (name) and the value (content).
  2. Check if content is a file (i.e., the string "file") and if name matches target (the name of the file being searched for).
  3. If both conditions are met, return True, indicating that the file has been found.
  4. If content is not a file, check whether it is a folder. Use the isinstance() function, passing content as the first argument and dict as the second (which checks if the element is a dictionary).
  5. If content is a folder, call file_exists recursively with the necessary parameters to continue searching inside it.
  6. If the recursive call returns True, the file has been found, so return True.
  7. If no matches are found after checking all folders and files, return False.

Lösning

Switch to desktopByt till skrivbordet för praktisk övningFortsätt där du är med ett av alternativen nedan
Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 5. Kapitel 2
Switch to desktopByt till skrivbordet för praktisk övningFortsätt där du är med ett av alternativen nedan
Vi beklagar att något gick fel. Vad hände?
some-alt