Jak konvertujete CSV na JSON v Python FOSS

Jak konvertujete CSV na JSON v Python FOSS

Problémy

Konvertujte soubor CSV na JSON pomocí Aspose.Cells FOSS v Python. Nabíjejte CS V s load_csv_workbook(), přečíst každý řádek pomocí: iter_rows() vytvořit Python seznam slovníků, pak serializovat do JSON pomocí standardu json modul.

Předpoklady

Chcete-li převést CSV na JSON pomocí Aspose.Cells FOSS v Pythonu, ujistěte se, že vaše prostředí splňuje následující požadavky.

  • Python 3.7 nebo novější nainstalovaný.
  • Instalace Aspose.Cells FOSS prostřednictvím pip install aspose-cells-foss>=26.3.1
  • Import knihovny pomocí: from aspose.cells_foss import load_csv_workbook
  • Základní znalost Python File Handling a standardy. json modul

Kroky ke změně

Krok 1: Nahrát soubor CSV

Použijte load_csv_workbook() funkce pro načtení souboru CSV do nové pracovní knihy. To iniciuje zobrazení dat tabulky v paměti.

from aspose.cells_foss import load_csv_workbook

workbook = load_csv_workbook("data.csv")
worksheet = workbook.worksheets[0]

Krok 2: Čtěte nadpisy a řádky

Použití: iter_rows(values_only=True) Pro vyvození všech řádků jako tuplů hodnot buněk se první řada považuje za řadu hlavy.

all_rows = list(worksheet.cells.iter_rows(values_only=True))

# Read the header row (first row)
headers = [str(v) if v is not None else f"col{i}" for i, v in enumerate(all_rows[0])]

Krok 3: Vytvořte seznam diktů a serializujte do JSONu

Iterovat zbývající řádky, vytvořit dikt na řadu klávesem podle názvů hlaviček, pak použít json.dump() Napsat soubor JSON.

import json

rows = [dict(zip(headers, row)) for row in all_rows[1:]]

with open("output.json", "w", encoding="utf-8") as f:
    json.dump(rows, f, indent=2, default=str)

print(f"Converted {len(rows)} rows to output.json")

Příklad kódu

Kompletní příklad z konce na konec kombinující všechny tři kroky:

import json
from aspose.cells_foss import load_csv_workbook

# Step 1: Load CSV
workbook = load_csv_workbook("data.csv")
worksheet = workbook.worksheets[0]

# Step 2: Extract all rows; first row is headers
all_rows = list(worksheet.cells.iter_rows(values_only=True))
if not all_rows:
    print("No data found in CSV")
else:
    headers = [str(v) if v is not None else f"col{i}" for i, v in enumerate(all_rows[0])]

    # Step 3: Build list of dicts from remaining rows
    rows = [dict(zip(headers, row)) for row in all_rows[1:]]

    # Step 4: Write JSON
    with open("output.json", "w", encoding="utf-8") as f:
        json.dump(rows, f, indent=2, default=str)

    print(f"Converted {len(rows)} rows to output.json")

Podporované formáty

Aspose.Cells FOSS supports loading CSV files and exporting to JSON via the approach shown above. The library also supports direct save to other formats.

FormátRozšířeníSměr:Poznámky
CSV.csvvstupníNáklad s: load_csv_workbook("file.csv")
JSON.- Json.výstupní výkonVybudovaný s Pythonem. json.dump() po iterování buněk
XLSX.xlsxvstup/výstupStandardní formát Excel Open XML
MARKDOWN.mdvýstupní výkonPoužití: wb.save_as_markdown("file.md")

Viz také:

 Čeština