Sobes.tech
Junior
717

Care sunt diferențele dintre funcțiile json.dumps și json.dump, precum și json.loads și json.load?

Răspuns de la AI

sobes.tech AI

json.dumps (s s la final înseamnă string) convertește un obiect Python într-un șir în format JSON.

json.dump convertește un obiect Python într-un șir în format JSON și îl scrie într-un obiect de tip fișier (de exemplu, un fișier) la calea specificată.

import json

date = {'name': 'Alice', 'age': 30}

# json.dumps
sir_json = json.dumps(date, indent=4) # Convertește obiectul în șir
print(sir_json)

# json.dump
with open('output.json', 'w') as f:
    json.dump(date, f, indent=4) # Scrie obiectul în fișier

json.loads (din nou, s înseamnă string) convertește un șir în format JSON înapoi într-un obiect Python.

json.load citește date dintr-un obiect de tip fișier (de exemplu, un fișier) în format JSON și le convertește înapoi într-un obiect Python.

import json

sir_json = '{"name": "Bob", "age": 25}'

# json.loads
obiect_python_din_string = json.loads(sir_json) # Convertește șirul în obiect
print(obiect_python_din_string)

# json.load
with open('input.json', 'r') as f:
    obiect_python_din_fisier = json.load(f) # Citește din fișier și convertește
print(obiect_python_din_fisier)

Tabelul rezumat al diferențelor:

Funcție Date de intrare Date de ieșire Scop principal
json.dumps Obiect Python Șir (format JSON) Conversia unui obiect într-un șir pentru transmitere/stocare
json.dump Obiect Python Scriere în obiect de fișier Conversia unui obiect și scrierea lui într-un fișier
json.loads Șir în format JSON Obiect Python Analiza șirului și conversia în obiect
json.load Obiect de fișier Obiect Python Citirea din fișier și conversia în obiect