千锋教育-做有情怀、有良心、有品质的职业教育机构

手机站
千锋教育

千锋学习站 | 随时随地免费学

千锋教育

扫一扫进入千锋手机站

领取全套视频
千锋教育

关注千锋学习站小程序
随时随地免费学习课程

当前位置:首页  >  技术干货  > python的dict和json数据有什么区别?

python的dict和json数据有什么区别?

来源:千锋教育
发布人:xqq
时间: 2023-10-11 19:27:43 1697023663

一、python的dict和json数据

区别

Python的dict是一种数据结构,JSON是一种数据格式。dict的key可以是任意可hash对象,json只能是字符串。{(1,2):1} 在python里是合法的,因为tuple是hashable type; {[1,2]:1} 在python里TypeError: unhashable “list”形式上有些相像,但json是纯文本的,无法直接操作。dict字符串用单引号,json强制规定双引号。dict里可以嵌套tuple, json里只有array。 json.dumps({1:2}) 的结果是 {“1”:2}, json.dumps((1,2)) 的结果是[1,2]json: true|false|null ; dict:True|False|None

联系

dict 存在于内存中,可以被序列化成 json 格式的数据(string),之后这些数据就可以传输或者存储了。

总结

JSON 是一种数据传输格式。

也就是说,这些字符串以 JSON 这样的格式来传输,至于你怎么 parse 这些信息,甚至是是否 parse, 是否储存,都不是 JSON 的事情。

用 Python 举个例子: 某段程序可以把字符串 “{A:1, B:2}”parse 成 一对 tuple: ( (“A”, 1), (“B”, 2) )而不是 dictionary: {“A”: 1, “B”: 2}.

所以 JSON 它能被解析成 Python 的 Dictionary 或者其他形式,但解析成什么内容是和 JSON 这种格式无关的。

Python 的 Dictionary 则是 Python 对 Hash Table 的实现,一套从存储到提取都封装好了的方案。

延伸阅读:

二、什么是JSON

JSON或JavaScript Object Notation,是一种使用文本存储数据对象的格式。换句话说,它是一种数据结构,将对象用文本形式表示出来。尽管它来源自JavaScript,但它已成为传输对象的实际标准。

大多数流行的编程语言都支持JSON格式,包括Python。JSON格式的文件经常用于API传输数据对象。以下是JSON字符串的示例:

{

   “name”: “United States”,

   “population”: 331002651,

   “capital”: “Washington D.C.”,

   “languages”: [

  “English”,

  “Spanish”

   ]

}

在这个例子中,JSON数据看起来像一个Python字典。像字典一样,JSON以键值对的形式传递数据。然而,JSON数据也可以是字符串、数字、布尔值或列表。

声明:本站稿件版权均属千锋教育所有,未经许可不得擅自转载。
10年以上业内强师集结,手把手带你蜕变精英
请您保持通讯畅通,专属学习老师24小时内将与您1V1沟通
免费领取
今日已有369人领取成功
刘同学 138****2860 刚刚成功领取
王同学 131****2015 刚刚成功领取
张同学 133****4652 刚刚成功领取
李同学 135****8607 刚刚成功领取
杨同学 132****5667 刚刚成功领取
岳同学 134****6652 刚刚成功领取
梁同学 157****2950 刚刚成功领取
刘同学 189****1015 刚刚成功领取
张同学 155****4678 刚刚成功领取
邹同学 139****2907 刚刚成功领取
董同学 138****2867 刚刚成功领取
周同学 136****3602 刚刚成功领取
相关推荐HOT