json.dump() în Python

JSON Python 3.0+

Scrie o valoare Python, ca JSON, direct într-un fișier deschis.

Sintaxă
json.dump(obiect, fisier, *, ensure_ascii=True, indent=None, ...)

Ce face json.dump()

dump() face același lucru ca dumps(), dar scrie rezultatul în fișierul primit, fără să construiască întâi tot textul. Fișierul se deschide în mod text, cu encoding="utf-8"; parametrii (indent, ensure_ascii etc.) sunt aceiași.

Parametri

Parametru Descriere
obiect Valoarea salvată.
fisier Un fișier deschis pentru scriere.

Ce returnează

None.

Exemple

Exemplul 1: Salvarea setărilor

import json
setari = {"limba": "ro", "tema": "întunecată", "font": 14}
with open("setari.json", "w", encoding="utf-8") as f:
    json.dump(setari, f, ensure_ascii=False, indent=2)
with open("setari.json", encoding="utf-8") as f:
    print(f.read())

Rezultat

{
  "limba": "ro",
  "tema": "întunecată",
  "font": 14
}

Greșeli frecvente

  • Inversezi argumentele: json.dump(f, setari) dă TypeError. Ordinea este (obiect, fișier).
  • Deschizi fișierul în mod binar ("wb") și primești TypeError: a bytes-like object is required.

Comenzi înrudite

  • json.load(): Citește un fișier JSON și returnează conținutul ca valori Python.
  • json.dumps(): Transformă un dicționar, o listă sau alte valori Python în text JSON.
  • open() și with: Deschide un fișier pentru citire sau scriere; cu with, fișierul este închis automat.