Junior
Koje su razlike između funkcija json.dumps i json.dump, kao i json.loads i json.load?
sobes.tech АИ
Одговор од АИ
json.dumps (s s na kraju znači string) pretvara Python objekat u niz u JSON formatu.
json.dump pretvara Python objekat u niz u JSON formatu i zapisuje ga u objekat sličan fajlu (npr. fajl) na navedenoj putanji.
import json
data = {'name': 'Alice', 'age': 30}
# json.dumps
json_string = json.dumps(data, indent=4) # Pretvara objekat u niz
print(json_string)
# json.dump
with open('output.json', 'w') as f:
json.dump(data, f, indent=4) # Zapisuje objekat u fajl
json.loads (opet, s znači string) pretvara niz u JSON formatu nazad u Python objekat.
json.load čita podatke iz objekta sličnog fajlu (npr. fajla) u JSON formatu i pretvara ih nazad u Python objekat.
import json
json_string = '{"name": "Bob", "age": 25}'
# json.loads
python_object_from_string = json.loads(json_string) # Pretvara niz u objekat
print(python_object_from_string)
# json.load
with open('input.json', 'r') as f:
python_object_from_file = json.load(f) # Čita iz fajla i pretvara
print(python_object_from_file)
Tabela sažetka razlika:
| Funkcija | Ulazni podaci | Izlazni podaci | Glavna svrha |
|---|---|---|---|
json.dumps |
Python objekat | Niz (JSON format) | Pretvaranje objekta u niz za prenos/čuvanje |
json.dump |
Python objekat | Upis u fajl sličan objekat | Pretvaranje objekta i zapis u fajl |
json.loads |
Niz u JSON formatu | Python objekat | Analiza niza i pretvaranje u objekat |
json.load |
Fajl sličan objekat | Python objekat | Čitanje iz fajla i pretvaranje u objekat |