Ako konvertovať CSV na JSON v Pythone FOSS

Ako konvertovať CSV na JSON v Pythone FOSS

Problém

Previesť CSV súbor do JSON pomocou Aspose.Cells FOSS v Pythone. Načítajte CSV pomocou load_csv_workbook(), prečítajte každý riadok pomocou iter_rows() a zostavte zoznam slovníkov v Pythone, potom serializujte do JSON pomocou štandardného modulu json.

Požiadavky

Ak chcete previesť CSV na JSON pomocou Aspose.Cells FOSS v Pythone, uistite sa, že vaše prostredie spĺňa nasledujúce požiadavky.

  • Python 3.7 alebo novší nainštalovaný
  • Nainštalujte Aspose.Cells FOSS pomocou pip install aspose-cells-foss>=26.3.1
  • Importujte knižnicu pomocou from aspose.cells_foss import load_csv_workbook
  • Základná znalosť práce so súbormi v Pythone a štandardného modulu json

Kroky konverzie

Krok 1: Načítajte CSV súbor

Použite pohodlnú funkciu load_csv_workbook() na načítanie CSV súboru do nového zošita. Tým sa inicializuje pamäťová reprezentácia údajov tabuľky.

from aspose.cells_foss import load_csv_workbook

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

Krok 2: Prečítajte hlavičky a riadky

Použite iter_rows(values_only=True) na extrahovanie všetkých riadkov ako n‑tice hodnôt buniek. Prvý riadok sa považuje za hlavičkový riadok.

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: Vytvorte zoznam slovníkov a serializujte do JSON

Iterujte zostávajúce riadky, vytvorte slovník pre každý riadok, kde kľúče sú názvy hlavičiek, a potom použite json.dump() na zápis JSON súboru.

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")

Ukážka kódu

Kompletný end-to-end príklad kombinujúci všetky tri 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 podporuje načítanie súborov CSV a export do JSON pomocou vyššie uvedeného prístupu. Knižnica tiež podporuje priamy zápis do iných formátov.

FormátPríponaPoznámky
CSV (vstup).csvNačítajte pomocou load_csv_workbook("file.csv")
JSON (výstup).jsonVytvorené pomocou Python json.dump() po iterácii buniek
XLSX (vstup/výstup).xlsxŠtandardný formát Excel Open XML
Markdown (výstup).mdPoužite wb.save_as_markdown("file.md")

Pozri tiež

 Slovenčina