في مرحلة ما، ربما تحتاج إلى العمل باستخدام بيانات من جدول بيانات Excel. كيف يمكنك العمل باستخدام بيانات وملفات Excel في بايثون؟ نستعرض في هذه المقالة بعضًا من أفضل حزم بايثون لبرنامج Excel.
تُعد جداول بيانات Excel طريقة شائعة جدًا لتخزين البيانات الجدولية. لكن Excel ليس خاليًا من المشكلات، كما ناقشنا في المقالة “بديل Excel: ما يجب تعلمه كمحلل بيانات“. بالنسبة لمجموعات البيانات الكبيرة، قد تحتاج إلى وظائف قاعدة البيانات. ولكن عند العمل مع مجموعات بيانات أصغر، فقد ترغب في الاستفادة من راحة Excel. في هذه الحالة، تعد معرفة كيفية العمل مع بيانات Excel في بايثون مهارة مهمة يجب إتقانها.
يمكن لمكتبات بايثون التي سنناقشها أن تسمح لك بالقيام بكل شيء بدءًا من قراءة ملفات Excel الموجودة وكتابتها وتعديلها إلى إنشاء ملفات Excel جديدة. للحصول على بعض المعلومات الأساسية، راجع مقالتنا كيفية قراءة ملفات Excel في بايثون.
حسنًا، دعنا نتحدث عن حزم بايثون التي تجعل العمل مع Excel ممكنًا. ولكن أولاً، نحتاج إلى توضيح أمر واحد: تنسيقات الملفات العديدة في Excel.
تنسيقات ملفات Excel
حتى عام 2007، كان برنامج Excel يستخدم تنسيق ملف يحمل الامتداد .xls. وفي الإصدارات اللاحقة من برنامج Excel، أصبح تنسيق الملف الافتراضي هو Excel Workbook، الذي يحمل الامتداد .xlsx. وقد ظهرت تنسيقات أخرى تدعم وظائف أكثر تحديدًا. وتشمل هذه التنسيقات .xlsm (تنسيق ملف يدعم وحدات الماكرو) وتنسيق الملف الثنائي .xlsb لبرنامجي Excel 2007 وExcel 2010. وهناك أيضًا تنسيقات ملفات قالبية، بما في ذلك .xltx و.xltm (تنسيق ملف يدعم وحدات الماكرو).
5 مكتبات لتسهيل العمل مع Excel في بايثون
1. openpyxl
أول حزمة بايثون لبرنامج Excel والتي سنناقشها هي openpyxl. ربما تكون الحزمة الأكثر استخدامًا للعمل مع ملفات Excel في بايثون. تم تصميم هذه الحزمة لقراءة وكتابة ملفات Excel 2010 بتنسيقات بما في ذلك .xlsx و.xlsm و.xltx و.xltm. وكما هو مذكور في الوثائق الرسمية، قد تكون openpyxl عرضة لهجمات ضارة معينة، ولكن يمكن الحماية منها.
إذا كنت تريد إنشاء ملف Excel جديد، فابدأ باستيراد المكتبة وإنشاء كائن مصنف:
>>> import openpyxl
>>> wb_obj = openpyxl.Workbook()
الآن يمكنك الحصول على الورقة النشطة والبدء في تعيين البيانات للخلايا. وأخيرًا، استخدم التابع save()
لكتابة الملف:
>>> sheet = wb_obj.active
>>> sheet['A1'] = 2
>>> sheet['A2'] = 3
>>> wb_obj.save('data.xlsx')
يمكنك أيضًا قراءة ملف موجود وتعديله باستخدام هذه الحزمة.
2. XlsxWriter
الحزمة التالية من بايثون للعمل مع Excel هي XlsxWriter، والتي تعمل مع ملفات .xlsx. يمكنها إنشاء ملفات وإضافة بيانات إلى الجداول في المصنف وتنسيق البيانات. من الميزات الرائعة بشكل خاص هي القدرة على استخدام بايثون لإضافة مخططات مباشرة إلى المصنف. تمنحك هذه الحزمة أيضًا القدرة على تطبيق الصيغ على المصنف.
لا يمكن استخدام XlsxWriter لقراءة أو تعديل ملف Excel الحالي. لاستخدامه، نحتاج إلى إنشاء ملف xlsx جديد وإضافة بعض البيانات وتطبيق صيغة:
>>> wb_obj = xlsxwriter.Workbook('formula.xlsx')
>>> sheet = wb_obj.add_worksheet()
>>> sheet.write('A1', 2)
>>> sheet.write('A2', 3)
>>> sheet.write_formula('A3', '{=SUM(A1:A2)}')
>>> wb_obj.close()
لمزيد من المعلومات والأمثلة، راجع وثائق XlsxWriter.
3 و 4. pyxlsb و pyxlsb2
كما يوحي اسم الحزمة التالية، فإن pyxlsb متخصص في تحليل تنسيق الملف الثنائي .xlsb. الوظيفة محدودة للغاية، ولكن يمكنك فتح مصنف، والحصول على ورقة معينة، وقراءة الصفوف. يمكن تحقيق ذلك باستخدام التوابع open_workbook()
وget_sheet_by_index()
وrows()
.
توجد أيضًا بعض الوظائف المحدودة لتنسيق التواريخ لتحويلها إلى كائنات تاريخ ووقت. يوفر الإصدار المحدث، pyxlsb2، بعض التحسينات مقارنة بالإصدار السابق. وتشمل هذه التحسينات تسريع المعالجة وتحميل أوراق العمل وأوراق الماكرو واستخراج صيغ الماكرو.
5. pylightxl
حزمة pylightxl هي حزمة خفيفة الوزن لا تعتمد على أي شيء ويمكنها قراءة ملفات Excel وكتابتها. يمكن أن يكون عامل الاعتمادية الصفرية ميزة مقنعة إذا كنت تقوم بتطوير مشاريع أكبر، حيث سيتجنب هذا أي مشكلات تتعلق بالتوافق مع البرامج الأخرى ويجعل التحكم في الإصدار أسهل. أيضًا، بغض النظر عن إصدار بايثون الذي تستخدمه (من بايثون 2.7.18 إلى الأحدث)، فإن pylightxl ستكون متوافقة مدى الحياة.
بعد تثبيت هذه المكتبة، يمكنك استيرادها وقراءتها في ملف:
>>> import pylightxl as xl
>>> db = xl.readxl('data.xlsx')
من هنا، يمكنك استخدام العديد من التوابع على كائن قاعدة البيانات هذا للوصول إلى أوراق العمل وتعديلها وكتابة ملف Excel جديد.
كيفية التفوق في بايثون
لا يمكننا الحديث عن العمل بالبيانات في بايثون دون ذكر مكتبة pandas. وهي مكتبة مفيدة بشكل لا يصدق. في مقالة مكتبات بايثون التي يجب أن يعرفها كل مبتدئ في البرمجة، نعرض مثالاً لكيفية قراءة ملفات Excel في بايثون باستخدام pandas. وهي مكتبة أساسية وواحدة من أفضل 15 مكتبة بايثون لعلم البيانات.
يعد استخدام بايثون لقراءة ملفات Excel أمرًا ضروريًا إذا كنت تريد أن تصبح جيدًا في التعامل مع البيانات. لتعزيز حافزك، إليك شرحًا لفوائد تعلم بايثون.
اكتشاف المزيد من بايثون العربي
اشترك للحصول على أحدث التدوينات المرسلة إلى بريدك الإلكتروني.