Hogyan lehet a JSON-t CSV-vé konvertálni a Pythonban

Nő kezében html kódolás és programozás képernyőn laptop, web, fejlesztő.

Hogyan lehet a JSON-t CSV-vé konvertálni a Pythonban

Kép jóváírása: oatawa/iStock/GettyImages

Meg lehet konvertálni JSON-ból CSV-be a Python programozási nyelven a nyelvhez tartozó beépített könyvtárak használatával. Végigpörgetheti a JSON-objektumot, és kiadhatja annak kulcsait és értékeit sorokként egy vesszővel elválasztott értékfájlban. Ne feledje, hogy nem minden JSON-fájl egyszerűen ábrázolható egyetlen CSV-ként, ezért a formátumtól függően előfordulhat, hogy több CSV-fájlt kell használnia az összes adat hasznos megjelenítéséhez.

A JSON és a CSV ismerete

A JSON- és a CSV-fájlok két gyakori módja a digitális adatok megjelenítésének. A JSON rövidítése JavaScript objektum jelölés, és ez egy módja annak, hogy az adatokat a kulcsok értékekhez való beágyazott leképezéseiként, valamint adatlistákként jelenítse meg. Az ihlette, hogy az adatok hogyan jelennek meg a JavaScript programozási nyelvben, de sok modern programozási nyelv, köztük a Python is rendelkezik eszközökkel a JSON-adatok feldolgozására.

A nap videója

A vesszővel elválasztott érték fájl egy másik módja a strukturált adatok megjelenítésének. Ezeket a fájlokat gyakran használják táblázatokkal és hasonló típusú programokkal, így ha szeretné importálja a JSON-t Excelbe hasznos lehet először CSV-fájllá konvertálni. Általában a CSV-fájlok oszlopfejléceket tartalmaznak a fájl tetején, amelyek jelzik, hogy az egyes oszlopok mit tárolnak. Ezután a fájl minden sora több értékből áll, minden oszlophoz egy, vesszővel elválasztva. A vesszővel ellátott adatok kezelésére speciális szabályok vonatkoznak.

Csakúgy, mint a JSON-fájlok esetében, számos programozási nyelvben, köztük a Pythonban is számos eszköz létezik a CSV-fájlok generálására és olvasására.

Konvertálja a JSON-t CSV-vé

A JSON-t CSV-vé konvertálhatja a Python beépített JSON- és CSV-könyvtáraival. Importálja őket a kódba úgy, hogy a kód tetejéhez adjon hozzá „json import” és „csv import” sort.

Ezután használja a JSON könyvtár "Betöltés" metódussal importálhatja az adatokat JSON-fájlból. Python szótárként lesz betöltve. Használd a szótár "kulcsok" metódussal határozza meg a JSON-fájl azon adatmezőit, amelyek a CSV-fájl oszlopai lesznek.

Használja a CSV könyvtár "Diktíró" osztály CSV-fájl létrehozásához ezekkel az oszlopokkal, megadva azokat a DictWriter "mezőnevek" érv. Használd a "írásfejlécek" metódussal adja ki az oszlopneveket a CSV tetején.

Ezután görgessen végig a JSON objektumon az a hurokhoz. Hívás a CSV-objektum „writerow” metódusával a JSON-fájl minden adatelemén, hogy létrehozzon egy megfelelő sort a CSV-fájlban.

Összetett JSON-fájlok

Egyes összetett JSON-fájlokat nehezebb lehet CSV-ként ábrázolni. Ide tartozhatnak azok a fájlok, amelyek nem illeszkednek azonnal egy szabványos sor- és oszlopszerkezethez. Ha ilyen fájllal van dolgod, és CSV-vé szeretné konvertálni, akkor van néhány lehetőség.

Először is megkeresheti a JSON-fájlban előforduló adatmezők teljes készletét, és beállíthatja ezeket a CSV-fájl oszlopaivá. Hagyjon üresen egy oszlopot egy adott sorban, ha az ott nem jelenik meg. Használja a lehetőséget "extraction='elhagyása'" a Python CSV DictWriter beállításában, hogy ezt automatikusan megteszi olyan mezők esetében, amelyek nem fordulnak elő egy adott adatban.

Azt is megfontolhatja, hogy a JSON-fájlt több CSV-fájlként is megjelenítse, egyet-egyet minden benne szereplő adattípushoz. Python használata ha utasítások annak megállapítására, hogy egy adott adatot melyik CSV-fájlba kell írni.

Ez a technika hasznos lehet beágyazott JSON-fájlok esetén is, amelyekben a JSON-objektumok más objektumokat is tartalmaznak. Ezek az alobjektumok saját CSV-fájljukba helyezhetők, jelezve, hogy az elsődleges CSV-ben melyik sornak felelnek meg.