对于简单的情况,会想到pprint()和eval()。
使用您的示例:
>>> d = {'age': 27,
... 'name': 'Joe',
... 'numbers': [1,
... 2,
... 3,
... 4,
... 5],
... 'subdict': {
... 'first': 1,
... 'second': 2,
... 'third': 3
... }
... }
>>>
>>> from pprint import pprint
>>> pprint(d)
{'age': 27,
'name': 'Joe',
'numbers': [1, 2, 3, 4, 5],
'subdict': {'first': 1, 'second': 2, 'third': 3}}
>>>
对于使用同一工具修复两个需求,我会三思而后行。您是否考虑过使用pickle进行序列化,然后使用pprint()(或更漂亮的对象查看器)供人类查看对象?