Junior
Mik a különbségek a json.dumps és json.dump, valamint a json.loads és json.load függvények között?
sobes.tech MI
Válasz az MI-től
json.dumps (a végén az s azt jelenti, hogy string) Python-objektumot JSON-formátumú sztringgé alakít.
json.dump Python-objektumot JSON-formátumú sztringgé alakít és egy fájlhoz hasonló objektumba írja (például fájlba) a megadott útvonalon.
import json
data = {'name': 'Alice', 'age': 30}
# json.dumps
json_string = json.dumps(data, indent=4) # Az objektumot sztringgé alakítja
print(json_string)
# json.dump
with open('output.json', 'w') as f:
json.dump(data, f, indent=4) # Az objektumot fájlba írja
json.loads (újra, az s azt jelenti, hogy string) JSON-formátumú sztringet alakít vissza Python-objektummá.
json.load olvas adatokat egy fájlhoz hasonló objektumból (például fájlból) JSON-formátumban, és visszaalakítja Python-objektummá.
import json
json_string = '{"name": "Bob", "age": 25}'
# json.loads
python_object_from_string = json.loads(json_string) # A sztringet objektummá alakítja
print(python_object_from_string)
# json.load
with open('input.json', 'r') as f:
python_object_from_file = json.load(f) # Fájlból olvas és alakít
print(python_object_from_file)
Az eltérések összefoglaló táblázata:
| Funkció | Bemeneti adatok | Kimeneti adatok | Fő célja |
|---|---|---|---|
json.dumps |
Python-objektum | Sztring (JSON formátum) | Objektum konvertálása sztringgé továbbítás/ tárolás céljából |
json.dump |
Python-objektum | Fájl objektumba írás | Objektum konvertálása és írása fájlba |
json.loads |
JSON formátumú sztring | Python-objektum | Sztring elemzése és konvertálása objektummá |
json.load |
Fájl objektum | Python-objektum | Fájl olvasása és konvertálása objektummá |