Tento tutoriál je prezentován jako návod, jak převést JSON na CSV v Pythonu. Obsahuje odkaz na zdroj pro konfiguraci prostředí Pythonu, podrobné kroky, které je třeba dodržet k provedení tohoto úkolu, a spustitelný ukázkový kód Pythonu. Zápis JSON do CSV Python kódu je poměrně jednoduchý a nevyžaduje žádný další nástroj třetí strany.
Kroky k převodu JSON na CSV v Pythonu
- Nastavte prostředí za použití Aspose.Cells pro Python prostřednictvím Javy
- Vytvořte nebo načtěte zdrojová data JSON do proměnné řetězce
- Vytvořte prázdný objekt třídy Workbook, kam budou data JSON uložena jako CSV
- Získejte odkaz na první worksheet v nově vytvořeném sešitu
- Vytvořte instanci objektu třídy JsonLayoutOptions pro přizpůsobení procesu převodu
- Pomocí funkce JsonUtility.importData transformujte data JSON na CSV
- Uložte výsledný sešit jako soubor CSV na disk
Tyto kroky popisují proces sdílením prostředků pro nastavení prostředí Pythonu a poté sdílením postupu po krocích k provedení tohoto úkolu. Musíme nastavit řetězec JSON přímo nebo jej načíst z nějakého souboru, vytvořit prázdný sešit nebo načíst existující sešit, získat odkaz na cílový list, kam se mají importovat data JSON, importovat řetězec JSON do CSV pomocí JsonUtility. importData() a nakonec uložte sešit jako CSV pomocí funkce Workbook.save. Chcete-li převést JSON na CSV Python, jsou v těchto krocích také identifikovány související třídy, které mají být použity pro uvedenou konverzi.
Kód pro převod JSON na CSV pomocí Pythonu
import jpype | |
import asposecells | |
# Start JVM | |
jpype.startJVM() | |
from asposecells.api import License, Workbook, JsonLayoutOptions, JsonUtility, SaveFormat | |
# Load License to avoid trial version restriction during JSON to CSV conversion | |
licenseJsonToCsv = License() | |
licenseJsonToCsv.setLicense("Aspose.Cells.lic") | |
# load JSON data | |
jsonSourceString = '[{"Country Name":"Afghanistan","Code":4},{"Country Name":"Albania","Code":8},{"Country Name":"Algeria","Code":12},{"Country Name":"American Samoa","Code":16},{"Country Name":"Andorra ","Code":20},{"Country Name":"Angola","Code":24},{"Country Name":"Anguila","Code":660},{"Country Name":"Antigua and Barbuda","Code":28},{"Country Name":"Argentina","Code":32},{"Country Name":"Armenia ","Code":51},{"Country Name":"Aruba","Code":533},{"Country Name":"Australia","Code":36},{"Country Name":"Austria","Code":40},{"Country Name":"Azerbaijan ","Code":31}]' | |
# Create an empty workbook to save the JSON data as CSV in it | |
workbookForCSV = Workbook() | |
# Get a reference to the first worksheet in the default worksheets collection | |
destWorksheet = workbookForCSV.getWorksheets().get(0) | |
# Create and configure the JsonLayoutOptions object to read the data from JSON string data | |
layoutOptions = JsonLayoutOptions() | |
layoutOptions.setArrayAsTable(True) | |
# Import data into CSV file from the JSON string data | |
JsonUtility.importData(jsonSourceString, destWorksheet.getCells(), 0, 0, layoutOptions) | |
# Save the workbook as CSV file | |
workbookForCSV.save("output.csv", SaveFormat.CSV) | |
# Shutdown the JVM | |
jpype.shutdownJVM() |
Použili jsme JsonLayoutOptions.setArrayAsTable(True), který způsobí, že se data přenesou jako tabulka, tj. nadpisy se umístí pouze jednou na začátek souboru a poté se zkopírují pouze data na další řádky v souboru. Pokud chcete opakovat nadpisy pro každý řádek, odeberte toto volání. Podobně, zatímco převod JSON na CSV Python kód může použít tuto třídu JsonLayoutOptions k rozhodování o převodu číselných a datových dat do vhodného formátu a typu, zcela odstranit řádek nadpisů, nastavit styl nadpisu a také spoustu dalších možností.
Tento článek nás naučil, jak převést JSON na CSV v Pythonu, pokud však chcete výstupní sešit uložit do jiného formátu, jako je PDF, přečtěte si článek na jak převést Excel do PDF pomocí Pythonu.