Python में स्प्रेडशीट कैसे लोड करें
यह गाइड दर्शाता है कि Python में XLSX और CSV स्प्रेडशीट फ़ाइलें Workbook का उपयोग करके कैसे लोड करें, get_worksheet() के साथ वर्कशीट्स तक पहुँचें, और Worksheet.cells ग्रिड के माध्यम से सेल मान पढ़ें। यह लाइब्रेरी शुद्ध Python में चलती है, बिना Microsoft Office या नेटिव एक्सटेंशन के।
चरण-दर-चरण गाइड
चरण 1: पैकेज स्थापित करें
नीचे दिए गए pip कमांड का उपयोग करके PyPI से Aspose.Cells FOSS पैकेज स्थापित करें:
pip install aspose-cells-fossइम्पोर्ट करके Workbook और एक पुष्टि संदेश प्रिंट करके स्थापना की जाँच करें:
from aspose.cells_foss import Workbook
print("aspose-cells-foss is ready.")चरण 2: आवश्यक क्लासेज़ आयात करें
स्प्रेडशीट लोड करने के API तक पहुंचने के लिए aspose.cells_foss से Workbook क्लास आयात करें:
from aspose.cells_foss import Workbookचरण 3: फ़ाइल से वर्कबुक लोड करें
मौजूदा स्प्रेडशीट लोड करने के लिए फ़ाइल पाथ स्ट्रिंग को Workbook() को पास करें। कंस्ट्रक्टर संरक्षित फ़ाइलों के लिए वैकल्पिक password आर्ग्यूमेंट को स्वीकार करता है:
from aspose.cells_foss import Workbook
wb = Workbook("report.xlsx")
print("Loaded:", wb.file_path)चरण 4: एक वर्कशीट तक पहुंचें
get_worksheet() को पूर्णांक इंडेक्स (0-आधारित) या शीट नाम स्ट्रिंग के साथ उपयोग करें। वर्कबुक में कितनी शीट्स हैं, यह देखने के लिए worksheets प्रॉपर्टी का प्रयोग करें:
from aspose.cells_foss import Workbook
wb = Workbook("report.xlsx")
# By index
ws = wb.get_worksheet(0)
# By name
ws_named = wb.get_worksheet("Summary")
print(f"Worksheets: {len(wb.worksheets)}")
print(f"First sheet: {ws.name}")चरण 5: सेल मान पढ़ें
Worksheet.cells प्रॉपर्टी के माध्यम से सेल्स तक पहुंचें। शून्य-आधारित पंक्ति और कॉलम समन्वयों द्वारा एक Cell प्राप्त करने के लिए Cells.cell(row, col) का उपयोग करें। डेटा को Cell.value प्रॉपर्टी से पढ़ें। खाली सेल्स को सुरक्षित रूप से छोड़ने के लिए Cell.is_empty() का उपयोग करें:
from aspose.cells_foss import Workbook
wb = Workbook("report.xlsx")
ws = wb.get_worksheet(0)
cells = ws.cells
# Read individual cells
product = cells.cell(0, 0).value # row 0, col 0 (A1)
revenue = cells.cell(0, 1).value # row 0, col 1 (B1)
print(f"Product: {product}")
print(f"Revenue: {revenue}")
# Safe read with empty check
cell = cells.cell(1, 0)
if not cell.is_empty():
print(f"A2: {cell.value}")चरण 6: सभी पंक्तियों पर पुनरावृत्ति करें
बिना आयामों को जाने सभी पंक्तियों के माध्यम से चलने के लिए Cells.iter_rows() का उपयोग करें। साधारण Python मान प्राप्त करने के लिए values_only=True पास करें, न कि Cell वस्तुएँ:
from aspose.cells_foss import Workbook
wb = Workbook("report.xlsx")
ws = wb.get_worksheet(0)
for row in ws.cells.iter_rows(0, None, 0, None, values_only=True):
print(row)सामान्य समस्याएँ और समाधान
FileNotFoundError लोड करते समय जाँचें कि पथ सही है और फ़ाइल मौजूद है। उपयोग करें pathlib.Path पोर्टेबल पाथों के लिए: Workbook(str(Path("data") / "report.xlsx")).
Cell.value returns None सेल खाली है या सीमा से बाहर है। उपयोग करें Cell.is_empty() पढ़ने से पहले जाँचने के लिए value. सीमा से बाहर के कोऑर्डिनेट्स त्रुटि नहीं उत्पन्न करते — वे खाली सेल्स लौटाते हैं।
पासवर्ड-संरक्षित फ़ाइल एक त्रुटि उत्पन्न करती है पासवर्ड को दूसरे तर्क के रूप में पास करें: Workbook("protected.xlsx", "secret").
CSV पढ़ते समय केवल पहला शीट लोड होता है CSV फ़ाइलों में केवल एक शीट होती है। उपयोग करें Workbook.load_csv(file_path) एक मौजूदा पर Workbook इंस्टेंस यदि आपको CSV डेटा को किसी विशिष्ट शीट स्थिति में आयात करना है बजाय इसके कि इसे पढ़ा जाए Workbook() कंस्ट्रक्टर को सीधे।
शीट नाम नहीं मिला साथ में get_worksheet(name) शीट नाम केस-सेंसिटिव होते हैं। प्रिंट करें ws.name प्रत्येक इंडेक्स के लिए में wb.worksheets कॉल करने से पहले सटीक नाम की पुष्टि करने के लिए get_worksheet("Name").
अक्सर पूछे जाने वाले प्रश्न
क्या यह Linux और macOS पर काम करता है?
हाँ। aspose-cells-foss शुद्ध Python है और Windows, macOS, Linux, और Docker कंटेनरों पर बिना किसी नेटिव एक्सटेंशन या सिस्टम डिपेंडेंसीज़ के चलता है।
मैं कौन-से फ़ाइल फ़ॉर्मेट लोड कर सकता हूँ?
Workbook() कन्स्ट्रक्टर XLSX फ़ाइलों को सपोर्ट करता है। CSV फ़ाइलें .csv पाथ पास करके या एक Workbook इंस्टेंस पर Workbook.load_csv(file_path) को कॉल करके लोड की जा सकती हैं।
डेटा वाली अंतिम पंक्ति कैसे खोजूँ?
Cells.iter_rows() के साथ इटरेट करें और जब किसी पंक्ति में सभी मान None हों तो रोकें, या डेटा के अंत को पहचानने के लिए सीमा कोशिकाओं पर Cell.is_empty() का उपयोग करें।
क्या मैं किसी वर्कबुक को उसके फ़ॉर्मेट को पहले से जाने बिना खोल सकता हूँ?
फ़ाइल पाथ को Workbook(file_path) को पास करें। लाइब्रेरी फ़ाइल एक्सटेंशन और फ़ाइल हेडर्स से फ़ॉर्मेट का अनुमान लगाती है। यदि एक्सटेंशन गायब या अस्पष्ट है, तो स्पष्ट save/load फ़ॉर्मेट विकल्प का उपयोग करें।
मैं किसी सेल को उसके अक्षर पते जैसे “B3” से कैसे पढ़ूँ?
शून्य-आधारित पंक्ति और कॉलम पूर्णांक का उपयोग करें: B3 पंक्ति 2, कॉलम 1 है। एक-अक्षर वाले कॉलम के लिए ord(col_letter) - ord("A") से अक्षर पते परिवर्तित करें। उदाहरण के लिए, B ord("B") - ord("A") == 1 है, इसलिए cells.cell(2, 1) B3 में मैप होता है।