logo

json.dump() v Pythonu

Plná forma JSON je JavaScript Object Notation. To znamená, že k ukládání a přenosu dat se používá skriptový (spustitelný) soubor, který je tvořen textem v programovacím jazyce. Python podporuje JSON prostřednictvím vestavěného balíčku s názvemjson>. Pro použití této funkce importujeme balíček json do skriptu Python. Text v JSON se provádí prostřednictvím řetězce v uvozovkách, který obsahuje hodnotu v mapování klíč-hodnota{ }>. Je to podobné jako slovník v Pythonu.

json.dump()

json>modul v Pythonu poskytuje metodu nazvanoudump()>který převádí objekty Pythonu na vhodné objekty json. Je to mírná variantadumps()>metoda.



Rozdíl mezi dump() a dumps()

vyhodit() skládky()
Metoda dump() se používá, když mají být objekty Pythonu uloženy do souboru. Dumps() se používá, když je požadováno, aby objekty byly ve formátu řetězce, a používá se pro analýzu, tisk atd., .
Dump() potřebuje název souboru json, ve kterém má být výstup uložen jako argument. Funkce dumps() nevyžaduje předání žádného takového názvu souboru.
Tato metoda zapíše do paměti a poté se samostatně provede příkaz pro zápis na disk Tato metoda přímo zapisuje do souboru json
Rychlejší metoda 2x pomaleji

dump() a jeho argumenty

Syntax: json.dump(d, skipkeys=False, secure_ascii=True, check_circular=True, allow_nan=True, cls=None, indent=None, separators=None)

Parametry:

  • Odrážka : Zlepšuje čitelnost souboru json. Možné hodnoty, které lze tomuto parametru předat, jsou jednoduše dvojité uvozovky (''>), libovolné celočíselné hodnoty. Jednoduché dvojité uvozovky způsobí, že se každý pár klíč–hodnota zobrazí na novém řádku.

    Příklad:




    k nejbližší soused





    import> json> > # python object(dictionary) to be dumped> dict1>=>{> >'emp1'>: {> >'name'>:>'Lisa'>,> >'designation'>:>'programmer'>,> >'age'>:>'34'>,> >'salary'>:>'54000'> >},> >'emp2'>: {> >'name'>:>'Elis'>,> >'designation'>:>'Trainee'>,> >'age'>:>'24'>,> >'salary'>:>'40000'> >},> }> > # the json file where the output must be stored> out_file>=> open>(>'myfile.json'>,>'w'>)> > json.dump(dict1, out_file, indent>=> 6>)> > out_file.close()>

    >

    >

    Výstup:

    odsazení_uvozovek

  • přeskakovací klávesy: Pokud klíč není standardních povolených typů, jako je int, float, string, None nebo bool, bude při jejich dumpingu generována chyba. Aby se tomu zabránilo, pokud je tento parametr nastaven na skutečný .

    Příklad:




    import> json> > # python object(dictionary) to be dumped> dict1>=>{> >(>'addresss'>,>'street'>):>'Brigade road'>,> }> > # the json file where the output must be stored> out_file>=> open>(>'myfile.json'>,>'w'>)> > json.dump(dict1, out_file, indent>=> 6>)> > out_file.close()>

    >

    java int v řetězci

    >

    Výstup:

    Pokud funkce skipkeys není nastavena na hodnotu true, vygeneruje se následující chyba:

    python json

  • oddělovač: Tento parametr zabírá jednu nebo dvě hodnoty. První hodnota určuje symbol, který odděluje jeden pár klíč–hodnota od druhého. Další specifikuje symbol, který odděluje hodnotu od jejího klíče.
  • sort_keys: Tento parametr má logickou hodnotu. Pokud je nastavena na hodnotu True, klíče jsou nastaveny ve vzestupném pořadí, jinak se zobrazují jako v objektu Python
  • secure_ascii: Tento parametr také přebírá pouze booleovské hodnoty. Pokud není nastavena na hodnotu true, znaky, které nejsou ASCII, se vypisují do výstupního souboru tak, jak jsou. Ve výchozím nastavení je hodnota skutečný .

    Podívejte se na dva níže uvedené kódy, abyste zjistili rozdíl.

    Příklad 1:




    # dictionary to be dumped> d>=>{>'lang'>:>'??? ????'>}> > with>open>(>'myfile.json'>,>'w'>, encoding>=>'utf8'>) as json_file:> >json.dump(d, json_file, ensure_ascii>=> False>)>

    >

    >

    Výstup:

    python-json

    Příklad 2: Pokud je nastavena na hodnotu True, obsah souboru json bude:


    přidání do pole java



    import> json> > > # dictionary to be dumped> d>=>{>'lang'>:>'??? ????'>}> > with>open>(>'myfile.json'>,>'w'>, encoding>=>'utf8'>) as json_file:> >json.dump(d, json_file, ensure_ascii>=> True>)>

    >

    >

    Výstup:

    python-json-2

  • allow_in: Pomáhá serializovat rozsah plovoucích hodnot.

    Příklad 1:




    java matematický pow

    import> json> > > # dictionary to be dumped> d>=>{> >'a'>:>1>,> >'x'>:>float>(>'nan'>)> }> > with>open>(>'myfile.json'>,>'w'>, encoding>=>'utf8'>) as json_file:> >json.dump(d, json_file, allow_nan>=>False>)>

    >

    >

    Výstup:

    python-json

    Příklad 2: Pokud je nastavena na hodnotu True, chyba se nevygeneruje. Obsah v souboru json bude:

    řetězcové funkce java




    import> json> > > # dictionary to be dumped> d>=>{> >'a'>:>1>,> >'x'>:>float>(>'nan'>)> }> > with>open>(>'myfile.json'>,>'w'>, encoding>=>'utf8'>) as json_file:> >json.dump(d, json_file, allow_nan>=>True>)>

    >

    >

    Výstup:

    python-json