如何插入newline字符值



我有一个嵌套的词典,该字典存储了MP3和他们的音乐集。第一级词典存储了MP3本身,第二级字典存储了容量和音乐信息。字典可能是:

{'mp3One': {'Capacity': 50, 'songOne': 50}, 'mp3Two': {'Capacity': 150}}

我想在第二级字典中的值之后插入newline字符,以便在打印时看起来像这样:

{'mp3One': {'Capacity': 50, 
            'songOne': 50 }, 
 'mp3Two': {'Capacity': 150}
}

以这种方式,我可以在每首歌曲或capacity之后都有一个newline字符。当前,音乐的键和价值是通过此行添加的:

mp3Collection[MP3Name][songName] = songSize

我尝试使用 n使用sting串联:

mp3Collection[MP3Name][songName] = str(songSize) + "n"

,但这将"n"添加到字典值中,而不是newline。我知道这可以使用字符串格式完成吗?但是我不太确定该怎么做。

您可以只用很小的宽度将其提供给pprint,应该通过强制添加每个逗号之后的新行,以使其按照您需要的方式将其打印出来,以便它遵守尽可能多的它可以宽度:

>>> import pprint
>>> d = {'mp3One': {'Capacity': 50, 'songOne': 50}, 'mp3Two': {'Capacity': 150}}
>>> pprint.pprint(d, width=1)
{'mp3One': {'Capacity': 50,
            'songOne': 50},
 'mp3Two': {'Capacity': 150}}

更改字典并添加新行不会影响输出格式,您需要使用pprint或通过循环和添加打印'n'

来照顾格式

最新更新