Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Вивчайте Завдання: Рекурсивний Пошук Файлів | Рекурсія та лямбда-функції
Quizzes & Challenges
Quizzes
Challenges
/
Підручник з Функцій Python

bookЗавдання: Рекурсивний Пошук Файлів

Робота з вкладеними словниками

Словники можуть зберігати інші словники, що корисно для представлення ієрархічних даних, таких як файлова система.

  • Ключі — це імена файлів або папок;
  • "file" означає, що елемент є файлом;
  • Вкладений словник означає, що елемент є папкою.

Використовуйте items() для ітерації по парам ключ–значення.

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

Використовуйте isinstance(content, dict), щоб перевірити, чи значення представляє папку:

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
Завдання

Swipe to start coding

Щоб перевірити, чи існує певний файл у вкладеному словнику, реалізуйте рекурсивну функцію file_exists:

  1. Перебирайте словник за допомогою items().
  2. Якщо content дорівнює "file" і name збігається з target, поверніть True.
  3. Якщо content є папкою (isinstance(content, dict)), викликайте file_exists рекурсивно.
  4. Якщо рекурсивний виклик повертає True, також поверніть True.
  5. Якщо після перевірки всіх рівнів нічого не знайдено, поверніть False.

Рішення

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 5. Розділ 2
single

single

Запитати АІ

expand

Запитати АІ

ChatGPT

Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат

close

Awesome!

Completion rate improved to 4.17

bookЗавдання: Рекурсивний Пошук Файлів

Свайпніть щоб показати меню

Робота з вкладеними словниками

Словники можуть зберігати інші словники, що корисно для представлення ієрархічних даних, таких як файлова система.

  • Ключі — це імена файлів або папок;
  • "file" означає, що елемент є файлом;
  • Вкладений словник означає, що елемент є папкою.

Використовуйте items() для ітерації по парам ключ–значення.

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

Використовуйте isinstance(content, dict), щоб перевірити, чи значення представляє папку:

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
Завдання

Swipe to start coding

Щоб перевірити, чи існує певний файл у вкладеному словнику, реалізуйте рекурсивну функцію file_exists:

  1. Перебирайте словник за допомогою items().
  2. Якщо content дорівнює "file" і name збігається з target, поверніть True.
  3. Якщо content є папкою (isinstance(content, dict)), викликайте file_exists рекурсивно.
  4. Якщо рекурсивний виклик повертає True, також поверніть True.
  5. Якщо після перевірки всіх рівнів нічого не знайдено, поверніть False.

Рішення

Switch to desktopПерейдіть на комп'ютер для реальної практикиПродовжуйте з того місця, де ви зупинились, використовуючи один з наведених нижче варіантів
Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 5. Розділ 2
single

single

some-alt