Junior
Kokios yra skirtumai tarp funkcijų json.dumps ir json.dump, taip pat json.loads ir json.load?
sobes.tech AI
Atsakymas iš AI
json.dumps (pabaigoje s reiškia string) paverčia Python objektą į JSON formato eilutę.
json.dump paverčia Python objektą į JSON formato eilutę ir įrašo ją į failo tipo objektą (pavyzdžiui, failą) nurodytu keliu.
import json
data = {'name': 'Alice', 'age': 30}
# json.dumps
json_string = json.dumps(data, indent=4) # objekto pavertimas eilute
print(json_string)
# json.dump
with open('output.json', 'w') as f:
json.dump(data, f, indent=4) # objekto įrašymas į failą
json.loads (vėlgi, s reiškia string) paverčia JSON formato eilutę atgal į Python objektą.
json.load skaito duomenis iš failo tipo objekto (pavyzdžiui, failo) JSON formatu ir paverčia juos atgal į Python objektą.
import json
json_string = '{"name": "Bob", "age": 25}'
# json.loads
python_object_from_string = json.loads(json_string) # eilutės pavertimas į objektą
print(python_object_from_string)
# json.load
with open('input.json', 'r') as f:
python_object_from_file = json.load(f) # skaito iš failo ir paverčia
print(python_object_from_file)
Santrauka apie skirtumus:
| Funkcija | Įvesties duomenys | Išvesties duomenys | Pagrindinis tikslas |
|---|---|---|---|
json.dumps |
Python objektas | Eilutė (JSON formatas) | Objektą paversti eilute, skirta perdavimui/įrašymui |
json.dump |
Python objektas | Rašymas į failo tipo objektą | Objektą paversti ir įrašyti į failą |
json.loads |
Eilutė (JSON formatas) | Python objektas | Analizuoti eilutę ir paversti ją į objektą |
json.load |
Failo tipo objektas | Python objektas | Skaityti iš failo ir paversti į objektą |