Автоматическое форматирование объекта (Python)

Разработанная мною python-функция возвращает большой объект в одну строку (примерно такой, как в примере, только в десятки раз больше)

{'a':{'b':1,'c':2,'d':{'e':{'f':3}}}}

Как сделать так, чтобы возвращаемый объект автоматически приходил в отформатированном виде, примерно вот таким:

{
  'a': {
    'b': 1,
    'c': 2,
    'd': {
      'e': {
        'f': 3
      }
    }
  }
}

?


Ответы (1 шт):

Автор решения: OPTIMUS PRIME

json.dumps()

import json

obj = {'a':{'b':1,'c':2,'d':{'e':{'f':3}}}}

print( json.dumps(obj, indent = 2) )

А если словарь изначально создается в виде строки,

obj = """{'a':{'b':1,'c':2,'d':{'e':{'f':3}}}}"""

print( json.dumps(eval(obj), indent = 2) )
→ Ссылка