Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Herausforderung: Rekursive Dateisuche | Rekursion und Lambda-Funktionen
Quizzes & Challenges
Quizzes
Challenges
/
Python-Funktionen-Tutorial

bookHerausforderung: Rekursive Dateisuche

Arbeiten mit verschachtelten Dictionaries

Dictionaries können andere Dictionaries speichern, was nützlich ist, um hierarchische Daten wie ein Dateisystem darzustellen.

  • Schlüssel sind Datei- oder Ordnernamen;
  • "file" bedeutet, dass das Element eine Datei ist;
  • Ein verschachteltes Dictionary bedeutet, dass das Element ein Ordner ist.

Verwendung von items(), um Schlüssel-Wert-Paare zu durchlaufen.

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

Verwendung von isinstance(content, dict), um zu prüfen, ob ein Wert einen Ordner darstellt:

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
Aufgabe

Swipe to start coding

Um zu überprüfen, ob eine bestimmte Datei existiert in einem verschachtelten Dictionary, implementieren Sie eine rekursive Funktion file_exists:

  1. Durchlaufen Sie das Dictionary mit items().
  2. Wenn content gleich "file" ist und name mit target übereinstimmt, geben Sie True zurück.
  3. Wenn content ein Ordner ist (isinstance(content, dict)), rufen Sie file_exists rekursiv auf.
  4. Gibt der rekursive Aufruf True zurück, propagieren Sie True.
  5. Wenn nach Überprüfung aller Ebenen keine Übereinstimmung gefunden wurde, geben Sie False zurück.

Lösung

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 5. Kapitel 2
single

single

Fragen Sie AI

expand

Fragen Sie AI

ChatGPT

Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen

close

Awesome!

Completion rate improved to 4.17

bookHerausforderung: Rekursive Dateisuche

Swipe um das Menü anzuzeigen

Arbeiten mit verschachtelten Dictionaries

Dictionaries können andere Dictionaries speichern, was nützlich ist, um hierarchische Daten wie ein Dateisystem darzustellen.

  • Schlüssel sind Datei- oder Ordnernamen;
  • "file" bedeutet, dass das Element eine Datei ist;
  • Ein verschachteltes Dictionary bedeutet, dass das Element ein Ordner ist.

Verwendung von items(), um Schlüssel-Wert-Paare zu durchlaufen.

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

Verwendung von isinstance(content, dict), um zu prüfen, ob ein Wert einen Ordner darstellt:

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
Aufgabe

Swipe to start coding

Um zu überprüfen, ob eine bestimmte Datei existiert in einem verschachtelten Dictionary, implementieren Sie eine rekursive Funktion file_exists:

  1. Durchlaufen Sie das Dictionary mit items().
  2. Wenn content gleich "file" ist und name mit target übereinstimmt, geben Sie True zurück.
  3. Wenn content ein Ordner ist (isinstance(content, dict)), rufen Sie file_exists rekursiv auf.
  4. Gibt der rekursive Aufruf True zurück, propagieren Sie True.
  5. Wenn nach Überprüfung aller Ebenen keine Übereinstimmung gefunden wurde, geben Sie False zurück.

Lösung

Switch to desktopWechseln Sie zum Desktop, um in der realen Welt zu übenFahren Sie dort fort, wo Sie sind, indem Sie eine der folgenden Optionen verwenden
War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 5. Kapitel 2
single

single

some-alt