Hướng dẫn check if json object contains value python - kiểm tra xem đối tượng json có chứa giá trị python không

Tôi có một đối tượng JSON mà tôi được trả lại từ một cuộc gọi, tương tự như thế này:

{
    'Tags': [
        {
            'Key': 'Dept',
            'PropagateAtLaunch': True,
            'ResourceId': 'my-auto-scaling-group',
            'ResourceType': 'auto-scaling-group',
            'Value': 'Research',
        },
        {
            'Key': 'Role',
            'PropagateAtLaunch': True,
            'ResourceId': 'my-auto-scaling-group',
            'ResourceType': 'auto-scaling-group',
            'Value': 'WebServer',
        },
        {
            'Key': 'ecs_scaling',
            'PropagateAtLaunch': True,
            'ResourceId': 'my-auto-scaling-group',
            'ResourceType': 'auto-scaling-group',
            'Value': 'true',
        },
    ],
    'ResponseMetadata': {
        '...': '...',
    },
}

Có cách nào đơn giản là xác định xem chính

data = json.loads[theThing]
for key in data.items[]:
   ... 
5 có tồn tại hay không, ngoài tiêu chuẩn:

data = json.loads[theThing]
for key in data.items[]:
   ... 

Chìa khóa có thể là mục đầu tiên, nó có thể là mục thứ 40 - lý tưởng nhất là tôi muốn có thể làm một cái gì đó như

data = json.loads[theThing]
for key in data.items[]:
   ... 
6?

Trang chủ »Python» Json »Python Kiểm tra xem chính có tồn tại trong JSON không và lặp lại mảng JSONPython » JSON » Python Check if key exists in JSON and iterate the JSON array

Nhiều lần khóa JSON lồng nhau chứa một giá trị dưới dạng một mảng hoặc từ điển. Trong trường hợp này, nếu bạn cần tất cả các giá trị, chúng ta có thể lặp lại mảng JSON lồng nhau. Hãy cùng xem ví dụ.

  • Vậy bạn nghĩ như thế nào?
  • Tôi muốn nghe từ bạn. Bạn nghĩ gì về bài viết này? Hãy cho tôi biết bằng cách để lại một bình luận dưới đây.
  • Ngoài ra, hãy cố gắng giải bài tập Python JSON để hiểu rõ hơn về việc làm việc với dữ liệu JSON trong Python.

Trong bài viết này, chúng ta sẽ xem cách thực hiện các hoạt động JSON sau đây bằng Python.

Kiểm tra xem khóa có tồn tại hay không trong JSON

student ={ 
   "id":1,
   "name":"john wick",
   "class":8,
   "percentage":75,
   "email":""
}

Kiểm tra xem có giá trị cho khóa không và trả về giá trị mặc định nếu khóa bị thiếu:

import json

studentJson ="""{
   "id": 1,
   "name": "john wick",
   "class": 8,
   "percentage": 75,
   "email": ""
}"""

print["Checking if percentage key exists in JSON"]
student = json.loads[studentJson]
if "percentage" in student:
    print["Key exist in JSON data"]
    print[student["name"], "marks is: ", student["percentage"]]
else:
    print["Key doesn't exist in JSON data"]

Output::

Checking if percentage key exists in JSON
Key exist in JSON data
john wick marks is:  75

Lặp lại mảng json: We used

data = json.loads[theThing]
for key in data.items[]:
   ... 
7 method to convert JSON encoded data into a Python dictionary. After turning JSON data into a dictionary, we can check if a key exists or not.

Hãy cùng xem từng người một.

Hãy để giả sử rằng bạn đã nhận được các sinh viên sau đây, JSON. Và bạn muốn kiểm tra xem khóa tỷ lệ phần trăm có mặt hay không trong dữ liệu JSON. Nếu nó có mặt trực tiếp để truy cập giá trị của nó thay vì lặp lại toàn bộ JSON.

Ví dụ để kiểm tra xem có giá trị cho khóa trong JSON không

import json

studentJson ="""{
   "id": 1,
   "name": "john wick",
   "class": null,
   "percentage": 75,
   "email": ""
}"""
student = json.loads[studentJson]
if not [student.get['email'] is None]:
     print["value is present for given JSON key"]
     print[student.get['email']]
else:
    print["value is not present for given JSON key"]

Output::

value is present for given JSON key

Trả về giá trị mặc định nếu khóa bị thiếu

Hãy để xem cách sử dụng giá trị mặc định nếu giá trị không có cho khóa. Như bạn đã biết, phương thức

data = json.loads[theThing]
for key in data.items[]:
   ... 
8 chuyển đổi dữ liệu JSON thành Python
data = json.loads[theThing]
for key in data.items[]:
   ... 
9 để chúng ta có thể sử dụng phương thức GET của lớp
data = json.loads[theThing]
for key in data.items[]:
   ... 
9 để gán giá trị mặc định cho khóa nếu thiếu giá trị.

import json

studentJson ="""{
   "id": 1,
   "name": "john wick",
   "class": null,
   "percentage": 75,
   "email": ""
}"""

student = json.loads[studentJson]
if not [student.get['subject'] is None]:
    print["value is present for given JSON key"]
    print[student.get['subject']]
else:
    print["using a default value for a given key"]
    print[student.get['subject', 'Science']]

Đầu ra

value is not present for given JSON key
using a default value for a given key
Science

Python tìm thấy nếu khóa lồng nhau tồn tại trong JSON

Hầu hết thời gian, JSON chứa rất nhiều phím lồng nhau. Hãy cùng xem cách truy cập trực tiếp vào các cặp giá trị khóa lồng nhau từ JSON. Hãy để giả sử bạn có dữ liệu JSON sau. Và bạn muốn kiểm tra và truy cập giá trị của các điểm khóa lồng nhau.marks.

{ 
   "class":{ 
      "student":{ 
         "name":"jhon",
         "marks":{ 
            "physics":70,
            "mathematics":80
         }
      }
   }
}

Ví dụ 1: Truy cập khóa lồng nhau trực tiếp

Nếu bạn biết rằng bạn luôn có khóa cha mẹ, thì bạn có thể truy cập trực tiếp khóa JSON lồng nhau. Trong trường hợp này, chúng tôi luôn có các khóa ‘lớp‘ và ‘sinh viên‘ để chúng tôi có thể truy cập trực tiếp vào các dấu khóa lồng nhau.

data = json.loads[theThing]
for key in data.items[]:
   ... 
0

Đầu ra

data = json.loads[theThing]
for key in data.items[]:
   ... 
1

Python tìm thấy nếu khóa lồng nhau tồn tại trong JSON

Hầu hết thời gian, JSON chứa rất nhiều phím lồng nhau. Hãy cùng xem cách truy cập trực tiếp vào các cặp giá trị khóa lồng nhau từ JSON. Hãy để giả sử bạn có dữ liệu JSON sau. Và bạn muốn kiểm tra và truy cập giá trị của các điểm khóa lồng nhau.

data = json.loads[theThing]
for key in data.items[]:
   ... 
2

Ví dụ 1: Truy cập khóa lồng nhau trực tiếp

Nếu bạn biết rằng bạn luôn có khóa cha mẹ, thì bạn có thể truy cập trực tiếp khóa JSON lồng nhau. Trong trường hợp này, chúng tôi luôn có các khóa ‘lớp‘ và ‘sinh viên‘ để chúng tôi có thể truy cập trực tiếp vào các dấu khóa lồng nhau.

data = json.loads[theThing]
for key in data.items[]:
   ... 
3

Output::

data = json.loads[theThing]
for key in data.items[]:
   ... 
4

Ví dụ 2: Truy cập khóa lồng nhau bằng cách sử dụng câu lệnh
student ={ 
   "id":1,
   "name":"john wick",
   "class":8,
   "percentage":75,
   "email":""
}
1 lồng nhau

Nếu bạn không chắc chắn liệu bạn có luôn có khóa chính của cha mẹ hay không, trong những trường hợp như vậy, chúng ta cần truy cập JSON lồng nhau bằng cách sử dụng câu lệnh Nested IF, để tránh mọi ngoại lệ.leaving a comment below.

Lặp lại mảng json

Chủ Đề