Hướng dẫn how do i remove a key from a json object in python? - làm cách nào để xóa khóa khỏi đối tượng json trong python?

{
    "duncan_long": {
        "id": "drekaner",
        "name": "Duncan Long",
        "favorite_color": "Blue"
    },
    "kelsea_head": {
        "id": "wagshark",
        "name": "Kelsea Head",
        "favorite_color": "Ping"
    },
    "phoenix_knox": {
        "id": "jikininer",
        "name": "Phoenix Knox",
        "favorite_color": "Green"
    },
    "adina_norton": {
        "id": "slimewagner",
        "name": "Adina Norton",
        "favorite_color": "Red"
    }
}

Tôi đang cố gắng trả về danh sách JSON của tất cả người dùng không bao gồm ID của người dùng

Xóa đối tượng JSON khỏi danh sách trong Python #

Để xóa đối tượng JSON khỏi danh sách:

  1. Phân tích đối tượng JSON vào một danh sách python từ điển.
  2. Sử dụng hàm enumerate() để lặp qua lần lặp qua danh sách.
  3. Kiểm tra xem mỗi từ điển có phải là phương pháp bạn muốn xóa và sử dụng phương thức pop() để loại bỏ dicting phù hợp không.

Copied!

import json file_name = 'example.json' with open(file_name, 'r', encoding='utf-8') as f: my_list = json.load(f) # 👇️ [{'id': 1, 'name': 'Alice'}, {'id': 2, 'name': 'Bob'}, {'id': 3, 'name': 'Carl'}] print(my_list) for idx, obj in enumerate(my_list): if obj['id'] == 2: my_list.pop(idx) new_file_name = 'new-file.json' with open(new_file_name, 'w', encoding='utf-8') as f: f.write(json.dumps(my_list, indent=2))

Ví dụ cho thấy cách xóa đối tượng JSON khỏi một mảng các đối tượng trong một tệp.

Bạn có thể sử dụng cùng một cách tiếp cận để xóa một đối tượng JSON khỏi một mảng các đối tượng bên ngoài tệp.

Copied!

import json my_json = '[{"id": 1, "name": "Alice"}, {"id": 2, "name": "Bob"}]' my_list = json.loads(my_json) for idx, dictionary in enumerate(my_list): if dictionary['id'] == 2: my_list.pop(idx) # 👇️ [{'id': 1, 'name': 'Alice'}] print(my_list) json_again = json.dumps(my_list) print(json_again) # 👉️ '[{"id": 1, "name": "Alice"}]'

Nếu JSON của bạn được đặt trong một tệp, hãy sử dụng phương thức json.load() để phân tích JSON.

Phương thức JSON.LOAD được sử dụng để giảm dần một tệp vào đối tượng Python, trong khi phương thức JSON.LOADS được sử dụng để giảm bớt chuỗi JSON thành đối tượng Python.

Bước tiếp theo là lặp lại trong danh sách và kiểm tra xem một khóa trong mỗi từ điển có một giá trị cụ thể.

Copied!

import json file_name = 'example.json' with open(file_name, 'r', encoding='utf-8') as f: my_list = json.load(f) # 👇️ [{'id': 1, 'name': 'Alice'}, {'id': 2, 'name': 'Bob'}, {'id': 3, 'name': 'Carl'}] print(my_list) for idx, obj in enumerate(my_list): if obj['id'] == 2: my_list.pop(idx) new_file_name = 'new-file.json' with open(new_file_name, 'w', encoding='utf-8') as f: f.write(json.dumps(my_list, indent=2))

Khi chúng tôi tìm thấy từ điển phù hợp, chúng tôi phải sử dụng phương thức list.pop() để xóa nó khỏi danh sách.

Phương thức Danh sách.pop loại bỏ mục tại vị trí đã cho trong danh sách và trả về nó.

Bạn cũng có thể thêm câu lệnh

Copied!

import json file_name = 'example.json' with open(file_name, 'r', encoding='utf-8') as f: my_list = json.load(f) # 👇️ [{'id': 1, 'name': 'Alice'}, {'id': 2, 'name': 'Bob'}, {'id': 3, 'name': 'Carl'}] print(my_list) for idx, obj in enumerate(my_list): if obj['id'] == 2: my_list.pop(idx) new_file_name = 'new-file.json' with open(new_file_name, 'w', encoding='utf-8') as f: f.write(json.dumps(my_list, indent=2))
0 nếu bạn chỉ muốn xóa từ điển

Copied!

import json file_name = 'example.json' with open(file_name, 'r', encoding='utf-8') as f: my_list = json.load(f) # 👇️ [{'id': 1, 'name': 'Alice'}, {'id': 2, 'name': 'Bob'}, {'id': 3, 'name': 'Carl'}] print(my_list) for idx, obj in enumerate(my_list): if obj['id'] == 2: my_list.pop(idx) new_file_name = 'new-file.json' with open(new_file_name, 'w', encoding='utf-8') as f: f.write(json.dumps(my_list, indent=2))
1 khỏi danh sách.

Copied!

for idx, obj in enumerate(my_list): if obj['id'] == 2: my_list.pop(idx) break

Điều này giúp bạn tiết kiệm một thời gian trong các lần lặp không cần thiết nếu từ điển đến đầu danh sách.

Bước cuối cùng là mở một tệp mới (

Copied!

import json file_name = 'example.json' with open(file_name, 'r', encoding='utf-8') as f: my_list = json.load(f) # 👇️ [{'id': 1, 'name': 'Alice'}, {'id': 2, 'name': 'Bob'}, {'id': 3, 'name': 'Carl'}] print(my_list) for idx, obj in enumerate(my_list): if obj['id'] == 2: my_list.pop(idx) new_file_name = 'new-file.json' with open(new_file_name, 'w', encoding='utf-8') as f: f.write(json.dumps(my_list, indent=2))
2) trong ví dụ, tuần tự hóa danh sách thành

Copied!

import json file_name = 'example.json' with open(file_name, 'r', encoding='utf-8') as f: my_list = json.load(f) # 👇️ [{'id': 1, 'name': 'Alice'}, {'id': 2, 'name': 'Bob'}, {'id': 3, 'name': 'Carl'}] print(my_list) for idx, obj in enumerate(my_list): if obj['id'] == 2: my_list.pop(idx) new_file_name = 'new-file.json' with open(new_file_name, 'w', encoding='utf-8') as f: f.write(json.dumps(my_list, indent=2))
3 và viết nó vào tệp.

Copied!

new_file_name = 'new-file.json' with open(new_file_name, 'w', encoding='utf-8') as f: f.write(json.dumps(my_list, indent=2))

Làm thế nào để bạn xóa một khóa

Xóa khóa: Các cặp giá trị bằng pop () ...
Chìa khóa là chìa khóa cần gỡ bỏ ..
Không chỉ định rằng nếu tìm thấy khóa, thì hãy xóa nó. Khác, không làm gì cả ..
Chúng tôi cũng có thể chỉ định một thông báo tùy chỉnh thay cho 'Không có' cho các trường hợp không tìm thấy khóa ..

Làm thế nào để bạn loại bỏ một phần tử khỏi một đối tượng JSON trong Python?

Để xóa một đối tượng JSON khỏi danh sách: phân tích đối tượng JSON vào danh sách từ điển python.Sử dụng hàm Enumerate () để lặp qua lần lặp qua danh sách. Hãy kiểm tra xem mỗi từ điển là phương thức bạn muốn xóa và sử dụng phương thức pop () để loại bỏ dicting phù hợp.Use the enumerate() function to iterate over the iterate over the list. Check if each dictionary is the one you want to remove and use the pop() method to remove the matching dict.

Làm cách nào để loại bỏ một thuộc tính khỏi đối tượng JSON?

Sử dụng toán tử xóa, toán tử xóa là cách dễ nhất để xóa thuộc tính đối tượng.Nếu chúng ta muốn xóa nhiều thuộc tính trong đối tượng, chúng ta cần sử dụng toán tử này nhiều lần.Trong ví dụ sau, chúng tôi đã tạo một đối tượng JSON với các khóa và giá trị. The Delete operator is the easiest way to delete the object property. if we want to delete multiple properties which are in the object, we need to use this operator multiple times. In the following example, we have created a JSON Object with keys and values.

Làm thế nào để bạn xóa một khóa

Để xóa một khóa, cặp giá trị trong từ điển, bạn có thể sử dụng phương thức DEL.Một bất lợi là nó mang lại cho KeyError nếu bạn cố gắng xóa khóa không tồn tại.Vì vậy, thay vì câu lệnh DEL, bạn có thể sử dụng phương thức POP.Phương thức này lấy khóa làm tham số.use the del method. A disadvantage is that it gives KeyError if you try to delete a nonexistent key. So, instead of the del statement you can use the pop method. This method takes in the key as the parameter.