Завдання: Рекурсивний Пошук Файлів
Робота з вкладеними словниками
Словники можуть зберігати інші словники, що корисно для представлення ієрархічних даних, таких як файлова система.
- Ключі — це імена файлів або папок;
"file"означає, що елемент є файлом;- Вкладений словник означає, що елемент є папкою.
Використовуйте items() для ітерації по парам ключ–значення.
1234567file_system = { "home": {"resume.pdf": "file", "notes.txt": "file"}, "etc": {"config.yaml": "file"} } for name, content in file_system.items(): print(name, "->", content)
Використовуйте isinstance(content, dict), щоб перевірити, чи значення представляє папку:
12345678910file_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")
Swipe to start coding
Щоб перевірити, чи існує певний файл у вкладеному словнику, реалізуйте рекурсивну функцію file_exists:
- Перебирайте словник за допомогою
items(). - Якщо
contentдорівнює"file"іnameзбігається зtarget, повернітьTrue. - Якщо
contentє папкою (isinstance(content, dict)), викликайтеfile_existsрекурсивно. - Якщо рекурсивний виклик повертає
True, також повернітьTrue. - Якщо після перевірки всіх рівнів нічого не знайдено, поверніть
False.
Рішення
Дякуємо за ваш відгук!
single
Запитати АІ
Запитати АІ
Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат
Awesome!
Completion rate improved to 4.17
Завдання: Рекурсивний Пошук Файлів
Свайпніть щоб показати меню
Робота з вкладеними словниками
Словники можуть зберігати інші словники, що корисно для представлення ієрархічних даних, таких як файлова система.
- Ключі — це імена файлів або папок;
"file"означає, що елемент є файлом;- Вкладений словник означає, що елемент є папкою.
Використовуйте items() для ітерації по парам ключ–значення.
1234567file_system = { "home": {"resume.pdf": "file", "notes.txt": "file"}, "etc": {"config.yaml": "file"} } for name, content in file_system.items(): print(name, "->", content)
Використовуйте isinstance(content, dict), щоб перевірити, чи значення представляє папку:
12345678910file_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")
Swipe to start coding
Щоб перевірити, чи існує певний файл у вкладеному словнику, реалізуйте рекурсивну функцію file_exists:
- Перебирайте словник за допомогою
items(). - Якщо
contentдорівнює"file"іnameзбігається зtarget, повернітьTrue. - Якщо
contentє папкою (isinstance(content, dict)), викликайтеfile_existsрекурсивно. - Якщо рекурсивний виклик повертає
True, також повернітьTrue. - Якщо після перевірки всіх рівнів нічого не знайдено, поверніть
False.
Рішення
Дякуємо за ваш відгук!
single