当前位置: 首页 > 面试题库 >

如何漂亮地打印嵌套词典?

戴高远
2023-03-14
问题内容

如何在Python中打印深度约为4的字典?我尝试使用进行漂亮的打印pprint(),但是没有用:

import pprint 
pp = pprint.PrettyPrinter(indent=4)
pp.pprint(mydict)

我只是想"\t"为每个嵌套添加一个缩进(),以便获得如下内容:

key1
    value1
    value2
    key2
       value1
       value2

等等

我怎样才能做到这一点?


问题答案:

我不确定您希望格式看起来如何,但是可以从这样的函数开始:

def pretty(d, indent=0):
   for key, value in d.items():
      print('\t' * indent + str(key))
      if isinstance(value, dict):
         pretty(value, indent+1)
      else:
         print('\t' * (indent+1) + str(value))


 类似资料:
  • 问题内容: Go中有类似Ruby的东西吗? 例如,在Ruby中,您可以编写: 输出将是: 我能找到的最接近的东西是 问题答案: 如果您的目标是避免导入第三方软件包,则另一个选择是使用json.MarshalIndent: 输出: 工作示例:http : //play.golang.org/p/SNdn7DsBjy

  • 问题内容: 我希望能够(漂亮)打印地图内容。 他们应该有换行和缩进,而不是一行;忽略collection / iterables / etc的toString方法;然后递归到嵌套集合中。 对于我来说,这对于地图尤为重要。我想JSON’ing可能是相关的,但我不想走得太远,或者至少- 不想让我的代码只为我漂亮地打印就知道JSON。我有什么选择(除了自己写这个以外)? 问题答案: 您可以使用apach

  • 问题内容: 有人知道在Go中漂亮地打印JSON输出的简单方法吗? 库存的 http://golang.org/pkg/encoding/json/ 软件包似乎不包含此功能 (编辑:确实如此,请参见接受的答案),而且快速的Google并没有发现任何明显的问题。 我正在寻找的用途既可以打印出JSON 的结果,又可以从任何地方格式化一个充满JSON的字符串,因此出于调试目的而更易于阅读。 问题答案: 通

  • 问题内容: 这似乎是一个已解决的问题,但我无法找到解决方案。 基本上,我读取了一个JSON文件,更改了密钥,然后将新的JSON写回到同一文件。都可以,但是我松了JSON格式,所以,而不是: 我懂了 Node.js中是否可以将格式良好的JSON写入文件? 问题答案: 的第三个参数定义用于漂亮打印的空白插入。它可以是字符串或数字(空格数)。Node可以使用写入您的文件系统。例: 请参阅MDN上的JSO

  • 有人知道一种简单的方法可以在Go中漂亮地打印JSON输出吗? 股票 http://golang.org/pkg/encoding/json/软件包似乎不包含此功能 (编辑:是的,请参见公认的答案),快速的谷歌搜索不会发现任何明显的问题。 我正在寻找的用法都是漂亮的打印json的结果。封送,然后格式化来自任何地方的充满JSON的字符串,因此更容易出于调试目的进行读取。

  • 我正在寻找一种漂亮的方法来打印地图。 <代码>贴图。toString()给我: