自动对象格式化(Python)

自动对象格式化(Python),python,object,Python,Object,我开发了一个python函数。它在一行中返回一个大对象,与示例类似,仅大十倍 {'a':{'b':1,'c':2,'d':{'e':{'f':3}}}} 如何使返回的对象自动以格式化形式出现?像这样: { 'a': { 'b': 1, 'c': 2, 'd': { 'e': { 'f': 3 } } } } json.dumps import json obj = {'a':{'b':1,'c':2,'d':{

我开发了一个python函数。它在一行中返回一个大对象,与示例类似,仅大十倍

{'a':{'b':1,'c':2,'d':{'e':{'f':3}}}}
如何使返回的对象自动以格式化形式出现?像这样:

{
  'a': {
    'b': 1,
    'c': 2,
    'd': {
      'e': {
        'f': 3
      }
    }
  }
}
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) )

不清楚你所说的格式化形式是什么意思。为什么需要格式化的表单?方便用户阅读,还是?在您的问题中,两个代码段中的内容是相同的。也许是背景?如果您试图让它成为用户可读的,也许您应该重新考虑函数输出的内容。您可以使用xmlwriter或适当的json格式来获得更好的结果。eval很少是正确的选项,请参阅。在这种情况下,应该使用ast.literal\u eval。