Представить дерево каталогов как JSON

Есть ли простой способ создания такого JSON? Я нашел os.walk() и os.listdir() , поэтому я могу сделать рекурсивный спуск в директории и построить объект python, ну, но это похоже на переосмысление колеса, может быть, кто-то знает рабочий код для такой задачи?

 { "type": "directory", "name": "hello", "children": [ { "type": "directory", "name": "world", "children": [ { "type": "file", "name": "one.txt" }, { "type": "file", "name": "two.txt" } ] }, { "type": "file", "name": "README" } ] } 

2 Solutions collect form web for “Представить дерево каталогов как JSON”

Я не думаю, что эта задача – «колесо» (если можно так выразиться). Но это то, чего вы легко можете достичь с помощью упомянутых вами инструментов:

 import os import json def path_to_dict(path): d = {'name': os.path.basename(path)} if os.path.isdir(path): d['type'] = "directory" d['children'] = [path_to_dict(os.path.join(path,x)) for x in os.listdir\ (path)] else: d['type'] = "file" return d print json.dumps(path_to_dict('.')) 

На linux-tree -J будет делать трюк

  • Получить все ссылки href с использованием селена в python
  • Как сделать pip или easy_install tkinter
  • Subclassing matplotlib Текст: манипулировать свойствами дочернего исполнителя
  • Невозможно изменить Path of cmd в Python 2.7
  • поведение концепции дескриптора в python (запутывание)
  • Python psycopg2 курсоры
  • Pandas обновляет выходные дни до ближайшего рабочего дня
  • В чем разница между% i и% d в Python?
  •  
    Interesting Posts for Van-Lav

    Сделать мой Bluetooth-сервер python видимым для iOS

    Перемещение двух строк за раз python

    Django 1.8 RC1: ProgrammingError при создании таблиц базы данных

    Как проверить всплывающие окна веб-страниц?

    Сравнение двух массивов numpy для равенства, по элементам

    python3.4 как удалить раздел текста после строки строки шаблона

    В python, как проверить конец стандартных потоков ввода (sys.stdin) и сделать что-то особенное на этом

    Вызов Python в Java?

    Какой самый питонический способ условно вернуть функцию

    Загрузите высокоразмерный набор данных R в Pandas DataFrame

    Всего загрузок модуля, отсутствующего на PyPi

    Могу ли я получить доступ к английскому словарю для прокрутки совпадений в морском коде? Если нет, я могу скопировать и вставить его из какого-либо места на несколько строк?

    Django отправляет почту с админ-панели

    Анализ текста в Python (Django)

    Верните первый элемент в список, соответствующий условию

    Python - лучший язык программирования в мире.