【发布时间】:2016-01-15 03:26:08
【问题描述】:
(这是对原始问题的编辑)“Python 字典和 JSON 有什么区别?” “需要清晰”对我来说,这是非常清晰和合乎逻辑的!无论如何,这是一个“改进”它的尝试......
将 Python 字典转换为 JSON 有什么好处,除了在不同平台和语言之间的可转移性?看下面的例子:
d = {'a':111, 'b':222, 'c':333}
print('Dictionary:', d)
j = json.dumps(d, indent=4)
print('JSON:\n%s' % j)
输出:
Dictionary: {'a': 111, 'b': 222, 'c': 333}
JSON:
{
"a": 111,
"b": 222,
"c": 333
}
它们几乎相同。那么,为什么要使用 JSON?
【问题讨论】:
-
如果你有一个在 python 中使用的 python dict,如果你不需要,将它转换成另一种语言的格式似乎是不必要的工作。
-
您的意思是要将 JSON 存储在某些文件中,还是只是在一个程序中将 dicts 作为 JSON 传递?没有理由做后者。
-
JSON 是数据交换格式。当您需要使数据在外部可用时转换为它。在内部使用它与在字符串中存储数字一样有意义。
-
是的,这就是我的想法,在单个程序中这似乎是一个不必要的步骤。我想我不确定您会在什么时候选择将数据转换为 JSON,但将其理解为 exchange 格式 会更清楚。谢谢。
-
J.F.塞巴斯蒂安怎么说。因此,您可能想使用 JSON 将该 dict 存储到磁盘,以便您可以在程序的后续运行中将其读回,以便其他程序可以读取该数据。但是,您可以使用 Python pickle 模块来保存这样的数据,并且 pickle 可以处理 JSON 无法处理的事情,OTOH,pickle 是 Python 特定的,而不是人类可读的。