Python中如何快速解析JSON对象数组

  目录

  JavaScript Object Notation

  JSON (JavaScript Object Notation)是一种用于数据交换的语法,它对人的读写很简单,对计算机的解析和生产也很简单,而且还可以存储数据。

  它是一种不偏向语言的全文格式。此外,Python包括一个名为json 的库,我们可以用它来与JSON数据进行交互。--p>

  JSON的语法被认为是JavaScript语法的一部分,它还包括name 和value ,因为name 在表示数据时前面有一个冒号(:),name: value 对被逗号分割。

  对象在大括号中,而数组元素住在方括号中,每个值之间用逗号隔开。在开始解析JSON之前,Python需要一些JSON来进行处理。

  有几件事情我们必须最初设置好。首先制作一个Python文件,它将包含这些练习的代码。然后,在该文件中导入JSON模块。

  JSON对象

  由于浏览器可以迅速地解析JSON对象,它们有助于在客户端和服务器之间传输数据。字符串、整数(浮点数或英寸)、布尔值、列表、空或另一个JSON对象都是JSON对象键的可接受值。

  在下面的例子中,创建了一个由字典填充的对象json_string ,该对象中的数据将通过使用json.load() 方法进行解析,然后打印输出中显示的数据。

  示例代码:

  import json

  json_string = """

  {

  "Student": {

  "ID" : "3",

  "name": "kelvin",

  "Group": "A",

  "Program" : "BSSE"

  }

  }

  """

  data = json.loads(json_string)

  print (data)

  输出:

  {'Student': {'ID': '3', 'name': 'kelvin', 'Group': 'A', 'Program': 'BSSE'}}

  解析JSON数组的对象

  JSON数组的结构与Python括号内的列表的结构相同。它们可能包括嵌套数组和与JSON对象字段值相同的数据类型。使用内置包json 的json.loads() 函数,将一个JSON字符串转化为Python对象。

  JSON数据字符串由json.loads() 函数解析,然后提供一个包含JSON中所有数据的Python字典。你可以通过使用名字或索引来引用对象,从这个 Python 字典中获得解析的数据。

  我们还可以检查字典中的嵌套JSON项目。使用相关的方法json.load() 来解析一个JSON文件(没有s)。在下面的例子中,我们使用json.loads 来解析数组中的值。

  示例代码:

  import json

  json_string = """

  {

  "Student": {

  "ID" : "3",

  "name": "kelvin",

  "Group": "A",

  "Program" : "BSSE",

  "cars": [

  {"model": "BMW 330e", "mpg": 143},

  {"model": "Rolls-Royce Phantom EWB", "mpg": 18}

  ]

  }

  }

  """

  data = json.loads(json_string)

  print (data)

  输出:

  {'Student': {'ID': '3', 'name': 'kelvin', 'Group': 'A', 'Program': 'BSSE', 'cars': [{'model': 'BMW 330e', 'mpg': 143}, {'model': 'Rolls-Royce Phantom EWB', 'mpg': 18}]}}

  这个例子通过JSON解码器将JSON数组转换为Python数组数据类型。在Python对象中使用其索引可以从JSON数组中获得一个元素。

  示例代码:

  import json

  json_str = """

  {

  "Orders": [

  {"Id": 151},

  {"Id": 120},

  {"Id": 131},

  {"Id": 114}

  ]

  } #Python小白学习交流群:711312441

  """''

  data = json.loads(json_str)

  order_1_id = data['Orders'][0]['Id']

  order_2_id = data['Orders'][1]['Id']

  order_3_id = data['Orders'][0]['Id']

  order_4_id = data['Orders'][1]['Id']

  total = len(data['Orders'])

  print(f"Order #1: {order_1_id}, Order #2: {order_2_id}, Total Orders: {total}")

  输出:

  Order #1: 151, Order #2: 120, Total Orders: 4

  以上就是Python中如何快速解析JSON对象数组的详细内容,更多关于Python解析JSON对象数组的资料请关注脚本之家其它相关文章!

  您可能感兴趣的文章: