📜  如何将 JSON 中的数据解析为Python?

📅  最后修改于: 2022-05-13 01:54:39.115000             🧑  作者: Mango

如何将 JSON 中的数据解析为Python?

JSON(JavaScript Object Notation)是一种轻量级的数据交换格式。人类很容易读写,机器可以解析和生成。基本上,它用于以指定格式表示数据,以便轻松访问和处理数据。在这里,我们将学习如何从 JSON 创建和解析数据并使用它。

在开始解析数据的细节之前,我们应该了解Python中的 'json'模块。它提供了一个类似于 pickle 的 API,用于将Python中的内存对象转换为序列化的表示形式,并且可以轻松解析 JSON 数据和文件。以下是一些使用Python从 JSON 解析数据的方法:

  • Python JSON to Dictionary:借助json.loads()函数,我们可以将 JSON 对象解析为字典。


Python3
# importing json library
import json
 
geek = '{"Name": "nightfury1", "Languages": ["Python", "C++", "PHP"]}'
geek_dict = json.loads(geek)
 
# printing all elements of dictionary
print("Dictionary after parsing: ", geek_dict)
 
# printing the values using key
print("\nValues in Languages: ", geek_dict['Languages'])


Python3
import json
from collections import OrderedDict
 
 
#create Ordered Dictionary using keyword
# 'object_pairs_hook=OrderDict'
data = json.loads('{"GeeksforGeeks":1, "Gulshan": 2, "nightfury_1": 3, "Geek": 4}',
                  object_pairs_hook=OrderedDict)
print("Ordered Dictionary: ", data)


Python3
# importing json library
import json
 
with open('data.json') as f:
  data = json.load(f)
 
# printing data after loading the json file
print(data)


输出:

  • Python JSON to Ordered Dictionary:我们必须使用相同的 json.loads()函数来解析对象,但是为了获得有序,我们必须从集合模块中添加关键字' object_pairs_hook=OrderedDict '。

Python3

import json
from collections import OrderedDict
 
 
#create Ordered Dictionary using keyword
# 'object_pairs_hook=OrderDict'
data = json.loads('{"GeeksforGeeks":1, "Gulshan": 2, "nightfury_1": 3, "Geek": 4}',
                  object_pairs_hook=OrderedDict)
print("Ordered Dictionary: ", data)

输出:

  • 使用 JSON 文件解析:借助json.load()方法,我们可以通过打开所需的 JSON 文件将 JSON 对象解析为字典格式。


Python3

# importing json library
import json
 
with open('data.json') as f:
  data = json.load(f)
 
# printing data after loading the json file
print(data)

输出: