كيفية تحميل جدول بيانات في بايثون
هذه الدليل تظهر كيفية تحميل ملفات جداول البيانات XLSX و CSV في بايثون باستخدام Workbook,ورق عمل الوصول مع get_worksheet(),، وقراءة قيم الخلية من خلال Worksheet.cells المكتبة تعمل في بايثون النقي بدون مايكروسوفت أوفيس أو إضافات أصلية.
خطوة بخطوة دليل
الخطوة 1: قم بتثبيت الحزمة
قم بتثبيت حزمة Aspose.Cells FOSS من PyPI باستخدام أمر pip أدناه:
pip install aspose-cells-foss>=26.3.1تحقق من التثبيت عن طريق استيراد Workbook وطباعة رسالة تأكيد:
from aspose.cells_foss import Workbook
print("aspose-cells-foss is ready.")الخطوة 2: استيراد الدروس المطلوبة
استيراد المعلومات Workbook من الفئة الثانية aspose.cells_foss للوصول إلى واجهة برمجة التشغيل لتحميل الجدول البياني:
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 الممتلكات. الاستخدام Cells.cell(row, col) إلى استرداد a Cell من خلال خطوطها وترتيبات عمودها المستندة إلى الصفر. اقرأ البيانات مع المادة: 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() أن تمشي عبر كل الصفوف دون معرفة الأبعاد. تصريح 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 العوائد 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").
الأسئلة المتكررة
هل هذا يعمل على لينكس و ماكوس؟?
نعم، أنا كذلك. aspose-cells-foss هو بايثون النقي ويتم تشغيله على Windows, macOS, Linux ,و Docker حاويات بدون أي امتدادات أصلية أو اعتماد نظام.
ما هي صيغ الملفات التي يمكنني تحميلها؟?
المجلس الوزاري Workbook() يقوم constructor بدعم ملفات XLSX. يمكن تحميل الملفة CSV من خلال تمرير إشارة إلى النظام الإلكتروني .csv الطريق أو عن طريق الاتصال Workbook.load_csv(file_path) على a Workbook مثال.
كيف أجد السطر الأخير مع البيانات؟?
التكرار مع Cells.iter_rows() وتوقف عندما تكون جميع القيم في صف None,أو ، استخدام Cell.is_empty() على الخلايا الحدودية للكشف عن أين تنتهي البيانات.
هل يمكنني فتح دفتر عمل دون معرفة شكل الكتاب مسبقاً؟?
إعطاء مسار الملف إلى … Workbook(file_path).المكتبة تستنبئ على الشكل من تمديد الملفات وعناوين المستندات. إذا كان التمديد مفقود أو غامض، استخدم إشارة إلى “إعادة تشغيل” في البيانات الخاصة بك. خيار صريح لتنسيق حفظ/تحميل.
كيف أقرأ خلية من خلال عنوان الرسالة مثل “B3”؟?
استخدام صفوف وعمدة على أساس الصفر: B3 هو السطر 2 ، العمود 1 . تحويل عناوين الرسالة مع ord(col_letter) - ord("A") للكلمات المختلفة، على سبيل المثال:, B هو ord("B") - ord("A") == 1,، لذا cells.cell(2, 1) خرائط إلى B3.