Wie man CSV in Python FOSS zu JSON konvertiert
Problem mit der
Konvertieren Sie eine CSV-Datei in JSON mit Aspose.Cells FOSS in Python. Laden Sie die CS V mit load_csv_workbook(), lesen Sie jede Zeile unter Verwendung von iter_rows() um eine Python-Liste von Wörterbüchern zu erstellen, dann mit dem Standard in JSON serialisieren json Modul. Das ist das erste Mal, dass ich…
Voraussetzungen für die Durchführung der Maßnahmen
Um CSV in JSON zu konvertieren, indem Sie Aspose.Cells FOSS in Python verwenden, stellen Sie sicher, dass Ihre Umgebung die folgenden Anforderungen erfüllt.
- Python 3.7 oder neuer installiert
- Installieren Sie Aspose.Cells FOSS über
pip install aspose-cells-foss>=26.3.1 - Importieren der Bibliothek unter Verwendung von:
from aspose.cells_foss import load_csv_workbook - Grundlegende Kenntnisse im Python-Dateiverarbeitungssystem und der Standardtechnik
jsonModul
Umstellungsschritte
Schritt 1: Laden der CSV-Datei ein
Verwenden Sie die load_csv_workbook() Die Komfortfunktion zur Aufladung der CSV-Datei in eine neue Arbeitsmappe initialisiert die Inmemory-Repräsentation der Daten des Tabellenkalkulators.
from aspose.cells_foss import load_csv_workbook
workbook = load_csv_workbook("data.csv")
worksheet = workbook.worksheets[0]Schritt 2: Überschriften und Zeilen lesen
Verwendung iter_rows(values_only=True) Die erste Zeile wird als Headerzeile behandelt.
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])]Schritt 3: Erstellen Sie eine Liste von Dicts und serialisieren Sie sie in JSON
Iterate die verbleibenden Zeilen, bauen Sie eine dict pro Zeile durch den Header Namen eingegeben, dann verwenden json.dump() um die JSON-Datei zu schreiben.
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")Beispiel für den Code
Das vollständige End-to-End-Beispiel, das alle drei Schritte kombiniert:
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")Unterstützte Formate
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.
| Format der Datenbank | Erweiterung | Richtung | Anmerkungen |
|---|---|---|---|
| CSV | .csv | Eingabe | Ladung mit load_csv_workbook("file.csv") |
| JSON | .- Ich bin nicht hier. | Ausgangssatz | Mit Python erstellt. json.dump() nach Iteration von Zellen |
| XLSX | .xlsx | Eingangs-/Ausgangsleistung | Standard-Excel Open XML Format (in einem anderen Excel) |
| MARKDOWN | .md | Ausgangssatz | Verwendung wb.save_as_markdown("file.md") |