список файлов диска HDD
Чтобы избежать этой ошибки, нужно обрабатывать исключения при попытке зайти в папку, к которой нет доступа. Вот исправленный вариант вашего Python-скрипта с обработкой ошибок доступа:
```python
import os
def tree_file(path, indent=0, file=None):
try:
items = os.listdir(path)
except PermissionError:
if file:
file.write(' ' * indent + '[Доступ запрещён]\n')
return
except Exception as e:
if file:
file.write(' ' * indent + f'[Ошибка: {e}]\n')
return
for item in items:
line = ' ' * indent + item
if file:
file.write(line + '\n')
full_path = os.path.join(path, item)
if os.path.isdir(full_path):
tree_file(full_path, indent + 4, file)
with open('D_drive_tree.txt', 'w', encoding='utf-8') as f:
tree_file('D:\\', 0, f)
```
- Добавлен `try-except` вокруг `os.listdir(path)` — если доступ запрещён,
просто записываем в файл сообщение и пропускаем эту папку.
- При других исключениях тоже записываем ошибку, чтобы не прерывать выполнение.
- Добавлен параметр `file` для записи результата в файл.
*
Запустите этот скрипт — он должен пройти по всем доступным папкам и вывести структуру в файл `D_drive_tree.txt`, пропуская недоступные.
также я могу помочь сделать более сложный вывод с размерами или другими параметрами.
Свидетельство о публикации №125080404941