当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python Json和Dictionary的区别用法及代码示例


在 Python 中,字典和 JSON(JavaScript 对象表示法)都有助于结构化数据表示,但它们在用法和语法上有所不同。在本文中,我们将讨论 JSON 的定义和字典JSON 和 Dictionary 之间的区别Python.

JSON 与字典

Python 原生的字典用于内存中的数据结构,允许直接操作。相比之下,JSON 是一种标准化的基于字符串的格式,对于系统之间的数据交换至关重要。

字典的数据类型不同,提供内存中的灵活性,同时JSON以其字符串格式,在互操作性方面表现出色。下面我们以表格的形式来看看差异。

Python 中的 JSON 是什么?

JSON(Javascript 对象表示法)是一种通过网络以文本形式传输数据的标准格式。 JSON是一种基于网络的数据交换和存储语法。它广泛使用 API 和数据库,这些 API 和数据库对于人类和机器来说都易于阅读和理解。 Python 包含一个名为‘json’ 的库,可用于处理 JSON 数据。要使用此函数,您必须首先将 JSON 包导入到您的 Python 代码中。

Python JSON 以大花brackets() 括起来的键值对的形式保存数据,使其与 Python 字典非常相似。但是,在本例中,JSON 键是带有强制双引号的字符串对象。另一方面,与键对应的值可以是任何数据类型, 如string,整数、嵌套 JSON 或任何其他相当于数组的序列数据类型。

示例 1:简单的 Json 结构

在这个例子中,JSON 字符串a提供代表有关人的数据。这json.loads()然后使用函数将 JSON 字符串解析为 Python 字典b。该代码从解析的字典中打印与 “city” 键关联的值,从而产生输出 “Banglore.”

Python3


import json
# some JSON:
a = '{ "name":"Rahul", "age":21, "city":"Banglore"}'
# parse x:
b = json.loads(a)
print(b["city"])
输出
Banglore


示例 2:嵌套 Json 示例

在这个例子中,变量nested_json保存嵌套 JSON 数据的字符串表示形式。代码使用print()显示嵌套的 JSON 字符串,通过嵌套对象展示其结构化层次结构,例如 “person” 详细信息和带有城市和国家/地区属性的嵌入式 “address”。

Python3


# Nested JSON String
nested_json = '{"person": {"name": "Alice", "age": 25, "address": {"city": "Wonderland", "country": "Fictional"}}}'
# Print the nested JSON string
print("Nested JSON String:", nested_json)
输出
Nested JSON String: {"person": {"name": "Alice", "age": 25, "address": {"city": "Wonderland", "country": "Fictional"}}}


Python 中的字典是什么?

字典是Python中的一种数据类型,用于在单个变量中存储多行数据。 Python 字典与可视化类似地存储数据值,这是任何其他仅保留单个值作为元素的数据类型所不允许的。字典是一个无序且可更改的数据组件集合,以键:值对的形式存储在 curly brackets() 中。冒号(:)代表与值对应的键。

字典值可以是任何数据类型并且可以有重复的值,但是字典键是唯一的并且不能更改。

示例 1:简单字典示例

在此示例中,名为的字典dict用代表颜色、汽车和花朵的键值对定义。该代码利用print()显示整个词典,展示其结构和内容。

Python3


dict = {
  "color": "blue",
  "car": "farari",
  "flower": "jasmine"
}
print(dict)
输出
{'color': 'blue', 'car': 'farari', 'flower': 'jasmine'}


示例 2:嵌套字典示例

在此示例中,名为的嵌套字典nested_dict创建后,表示有关具有嵌入地址的人员的信息。该代码采用print()展示整个嵌套结构,突出显示字典中数据的层次结构。

Python3


# Nested Dictionary
nested_dict = {"person": {"name": "Alice", "age": 25,
                          "address": {"city": "Wonderland", "country": "Fictional"}}}
print("Nested Dictionary:", nested_dict)
输出
Nested Dictionary: {'person': {'name': 'Alice', 'age': 25, 'address': {'city': 'Wonderland', 'country': 'Fictional'}}}


Python中Json和字典的区别

json

字典

JSON 键只能是字符串。

字典的键可以是任何可哈希对象。

JSON 中的键是按顺序排列的并且可以重复。

字典中的键不能重复并且必须不同。

JSON 中的键的默认值是未定义的。

字典中没有默认值。

JSON 文件中的值可使用 “.”(点)或 “[]” 运算符访问。

下标运算符用于访问字典中的值。例如‘dict’ = ‘A’:’123R’,’B’:’678S’,我们只需调用dict[‘A’]就可以检索到相关数据。

对于字符串对象,我们必须使用双引号。

对于字符串对象,我们可以使用单引号或双引号。

在 JSON 中,返回对象类型是“字符串”对象类型。

‘dict’ 对象类型是字典中的返回对象类型。



相关用法


注:本文由纯净天空筛选整理自mailforriya2708大神的英文原创作品 Difference between Json and Dictionary in Python。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。