Python FOSS में CSV को JSON में कैसे बदलें
समस्या
Aspose.Cells FOSS का उपयोग करके Python में CSV फ़ाइल को JSON में बदलें। load_csv_workbook() के साथ CSV लोड करें, प्रत्येक पंक्ति को iter_rows() का उपयोग करके पढ़ें और एक Python डिक्शनरी की सूची बनाएं, फिर मानक json मॉड्यूल का उपयोग करके JSON में सीरियलाइज़ करें।
पूर्वापेक्षाएँ
Python में Aspose.Cells FOSS का उपयोग करके CSV को JSON में परिवर्तित करने के लिए, सुनिश्चित करें कि आपका पर्यावरण निम्नलिखित आवश्यकताओं को पूरा करता है।
- Python 3.7 या बाद का संस्करण स्थापित हो
- Aspose.Cells FOSS को
pip install aspose-cells-foss>=26.3.1के माध्यम से स्थापित करें - लाइब्रेरी को
from aspose.cells_foss import load_csv_workbookका उपयोग करके इम्पोर्ट करें - Python फ़ाइल हैंडलिंग और मानक
jsonमॉड्यूल की बुनियादी परिचितता
परिवर्तन चरण
चरण 1: CSV फ़ाइल लोड करें
load_csv_workbook() सुविधा फ़ंक्शन का उपयोग करके CSV फ़ाइल को एक नई वर्कबुक में लोड करें। यह स्प्रेडशीट डेटा का इन‑मेमोरी प्रतिनिधित्व प्रारंभ करता है।
from aspose.cells_foss import load_csv_workbook
workbook = load_csv_workbook("data.csv")
worksheet = workbook.worksheets[0]चरण 2: हेडर और पंक्तियों को पढ़ें
iter_rows(values_only=True) का उपयोग करके सभी पंक्तियों को सेल मानों के ट्यूपल के रूप में निकालें। पहली पंक्ति को हेडर पंक्ति माना जाता है।
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])]चरण 3: डिक्ट्स की सूची बनाएं और JSON में सीरियलाइज़ करें
शेष पंक्तियों पर इटररेट करें, प्रत्येक पंक्ति के लिए हेडर नामों को कुंजी बनाकर एक डिक्ट बनाएं, फिर json.dump() का उपयोग करके 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")कोड उदाहरण
तीन चरणों को मिलाकर पूर्ण अंत‑से‑अंत उदाहरण:
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")समर्थित फ़ॉर्मेट
Aspose.Cells FOSS CSV फ़ाइलों को लोड करने और ऊपर दिखाए गए तरीके से JSON में निर्यात करने का समर्थन करता है। लाइब्रेरी अन्य फ़ॉर्मैट्स में सीधे सहेजने का भी समर्थन करती है।
| फ़ॉर्मेट | एक्सटेंशन | नोट्स |
|---|---|---|
| CSV (इनपुट) | .csv | load_csv_workbook("file.csv") के साथ लोड करें |
| JSON (आउटपुट) | .json | सेल्स को इटररेट करने के बाद Python json.dump() के साथ बनाया गया |
| XLSX (इनपुट/आउटपुट) | .xlsx | मानक Excel Open XML फ़ॉर्मेट |
| Markdown (आउटपुट) | .md | wb.save_as_markdown("file.md") का उपयोग करें |