بايثون: لغة البرمجة التي تشكل عالمنا – أكثر من 10 استخدامات برمجية مذهلة
مقدمة: بايثون في صميم الابتكار
مرحباً بك! هل تساءلت يوماً عن كيفية تطبيق لغة بايثون في سيناريوهات العالم الحقيقي؟ إذا كنت تتعلم بايثون وتطمح لمعرفة الإجابة، فهذا المقال مصمم خصيصاً لك. إن امتلاك رؤية واضحة حول تطبيقات هذه اللغة البرمجية وإمكاناتها الهائلة سيمنحك الدافع الذي تحتاجه طوال رحلتك التعليمية والمهنية. دعنا نبدأ رحلتنا لاكتشاف عالم بايثون الواسع!
بايثون في سيناريوهات العالم الحقيقي: لغة متعددة الاستخدامات
تُستخدم بايثون في كل صناعة ومجال علمي يمكن تخيله تقريباً، بما في ذلك:
- علوم البيانات (
Data Science). - تعلم الآلة (
Machine Learning). - تطوير الويب (
Web Development). - تعليم علوم الحاسوب (
Computer Science Education). - الرؤية الحاسوبية ومعالجة الصور (
Computer Vision and Image Processing). - تطوير الألعاب (
Game Development). - الطب والصيدلة (
Medicine and Pharmacology). - البيولوجيا والمعلوماتية الحيوية (
Biology and Bioinformatics). - علم الأعصاب وعلم النفس (
Neuroscience and Psychology). - علم الفلك (
Astronomy). - مجالات أخرى مثل الروبوتات، المركبات ذاتية القيادة، الأعمال، الأرصاد الجوية، وتطوير واجهة المستخدم الرسومية (
GUI).
يغطي هذا المقال مجموعة واسعة من تطبيقات هذه اللغة البرمجية في هذه الصناعات مع أمثلة وحالات استخدام ومكتبات بايثون الشهيرة. لنبدأ بتطبيقات بايثون في علوم البيانات.
علوم البيانات: التحليل والتصور

ربما يكون أحد أكثر تطبيقات بايثون شيوعاً هو علوم البيانات. إن قوة مكتبات بايثون المطورة لتحليل البيانات وتصورها مذهلة. دعنا نرى لماذا.
تطبيقات علوم البيانات
باستخدام مكتبة بايثون لتصور البيانات، يمكنك إنشاء مجموعة واسعة من المخططات والتمثيلات المرئية، مثل:
- الخطوط، الأشرطة، والعلامات.
- الصور، الكفافات، والحقول.
- المخططات الفرعية، المحاور، والأشكال.
- الإحصائيات (مخططات الصندوق، المخططات الشريطية، والرسوم البيانية التكرارية).
- مخططات الدائرة والمخططات القطبية.
- المخططات ثلاثية الأبعاد.
- والمزيد!
يمكنك إضافة النصوص، التسميات، التعليقات التوضيحية، الألوان، الأشكال، المجموعات، الرسوم المتحركة، والتفاعلية إلى مخططاتك اعتماداً على الحزمة أو المكتبة التي تختار العمل بها.
💡 نصيحة: يمكنك رؤية بعض الأمثلة على تصورات البيانات التي تم إنشاؤها باستخدام بايثون في الصورة أعلاه.
المكتبات والحزم الأساسية
دعنا نستعرض بعض أشهر الحزم والمكتبات للعمل مع بايثون في علوم البيانات:
بايثون لتحليل البيانات
NumPy: توصف هذه الحزمة بأنها "الحزمة الأساسية للحوسبة العلمية باستخدام بايثون". ووفقاً للموقع الرسمي لهذه الحزمة، "يعتمد كل عالم تقريباً يعمل في بايثون على قوةNumPy."Pandas: هي "أداة مفتوحة المصدر سريعة، قوية، مرنة، وسهلة الاستخدام لتحليل البيانات ومعالجتها."
بايثون لتصور البيانات
Matplotlib: هي "مكتبة شاملة لإنشاء تصورات ثابتة، متحركة، وتفاعلية في بايثون." إذا كنت مهتماً بما يمكنك فعله بهذه المكتبة، تحقق من معرض الأمثلة.Seaborn: هي "مكتبة بايثون لتصور البيانات مبنية علىmatplotlib." إذا كنت مهتماً بما يمكنك فعله بهذه المكتبة، تحقق من معرض الأمثلة.ggplot2: هو "نظام لإنشاء الرسومات بشكل تصريحي، استناداً إلى قواعد الرسومات (The Grammar of Graphics)". ووفقاً لموقعه الرسمي: "أنت تقدم البيانات، وتخبرggplot2بكيفية ربط المتغيرات بالجماليات، وما هي البدائيات الرسومية التي يجب استخدامها، وهو يتولى التفاصيل."Bokeh: هي "مكتبة تصور تفاعلية لمتصفحات الويب الحديثة."Pandas: تحتوي هذه المكتبة على العديد من الأدوات لتصور البيانات.
موارد التعلم
إذا كنت ترغب في تعلم تحليل البيانات وتصورها باستخدام بايثون، Jupyter Notebooks، Numpy، Pandas، ملفات CSV، إطارات البيانات، والمزيد، يمكنك بدء رحلتك مع شهادة تحليل البيانات المجانية من freeCodeCamp:

خلال هذه الشهادة، ستعمل على إكمال هذه المشاريع:
- حاسبة المتوسط-التباين-الانحراف المعياري (
Mean-Variance-Standard Deviation Calculator). - محلل البيانات الديموغرافية (
Demographic Data Analyzer). - مصور البيانات الطبية (
Medical Data Visualizer). - مصور سلسلة زمنية لمشاهدات الصفحة (
Page View Time Series Visualizer). - متنبئ مستوى سطح البحر (
Sea Level Predictor).
قناة freeCodeCamp على يوتيوب تقدم أيضاً هذه الدروس التعليمية المجانية الرائعة لمساعدتك على البدء:
Data Analysis with Python – Full Course for Beginners (Numpy, Pandas, Matplotlib, Seaborn)بواسطة سانتياغو باسولتو.Python for Data Science – Learn Pandas, Matplotlib, Numpy, and MoreبواسطةDataPublishing.Matplotlib Crash Courseبواسطة كيث غالي.Python NumPy Tutorial for Beginnersبواسطة كيث غالي.
بالإضافة إلى ذلك، هذه الموارد مفيدة إذا كنت ترغب في تعلم كيفية العمل مع هذه المكتبات:
- دروس
Matplotlibالتعليمية: دروس تمهيدية، متوسطة، ومتقدمة مجانية لتعليمك كيفية إنشاء تصورات رائعة. - قسم "البدء" في
Pandas: دروس تمهيدية مجانية. - قسم "تعلم" في
NumPy: مجموعة منسقة من الموارد الخارجية لمساعدتك على البدء.
تعلم الآلة: مستقبل الذكاء الاصطناعي

بايثون هي أداة أساسية لكل مطور يرغب في دخول مجال تعلم الآلة المثير. دعنا نلقي نظرة موجزة على تعلم الآلة.
ما هو تعلم الآلة؟
تعلم الآلة (Machine Learning) هو فرع من فروع علوم الحاسوب ينشئ أنظمة قادرة على التعلم بمفردها. يستخدم هذا النوع من الأنظمة خوارزميات يتم تحسينها باستمرار بناءً على بيانات الإدخال التي تساعد النظام على "التعلم". يتعلم كيفية الاستجابة بشكل مستقل لسيناريوهات جديدة عن طريق توليد مخرجات مناسبة في سيناريوهات جديدة بناءً على المعرفة السابقة. أحد أروع الأشياء في هذه الأنظمة هو أنها تتطور باستمرار. إنها ليست مثل البرامج التي نكتبها عادةً في نص بايثون حيث نحدد كل إجراء محتمل يمكن أن يتخذه البرنامج. في تعلم الآلة، يتم تدريب النظام على "التفكير" واتخاذ القرارات بناءً على المعرفة السابقة. لهذا نقول إن الآلات "تتعلم" من البيانات.
💡 نصيحة: هذا حديث شيق من جوجل: Machine Learning Zero to Hero (Google I/O'19).
الشبكات العصبية: اللبنات الأساسية لتعلم الآلة
الشبكات العصبية هي وحدات المعالجة في النظام. إنها تحاول محاكاة شبكة حقيقية من الخلايا العصبية في الدماغ. تتلقى هذه "الخلايا العصبية" الافتراضية مدخلات، وتتعلم كيفية معالجة تلك المدخلات، وتولد مخرجات بناءً على معرفتها السابقة. هذا مشابه جداً لما يفعله دماغنا في كل لحظة من كل يوم. بفضل الشبكات العصبية، يمكن لخوارزمية تعلم الآلة أن تتعلم كيفية التنبؤ بالمخرجات المتوقعة من مدخلات معينة بناءً على المعرفة السابقة. على سبيل المثال، عندما ترى مقاطع فيديو موصى بها على يوتيوب، تم إنشاء هذه التوصيات بواسطة شبكات عصبية تتنبأ بمقاطع الفيديو التي قد ترغب في مشاهدتها بناءً على أنماطك السابقة. مذهل، أليس كذلك؟
💡 نصيحة: هذا مقال شيق من جوجل إذا كنت ترغب في قراءة المزيد عن مثال يوتيوب هذا: A Deep Dive into YouTube Recommendations.
بايثون وتعلم الآلة
أنا متأكد من أنك تتساءل: ما هو دور بايثون في هذا المجال؟ إنها واحدة من أكثر الأدوات شيوعاً وقوة المستخدمة لبرمجة هذا النوع من الأنظمة. إحدى أشهر المكتبات التي يستخدمها المطورون حول العالم للعمل مع بايثون المطبقة على تعلم الآلة هي TensorFlow. إنها مكتبة مفتوحة المصدر مجانية طوّرها فريق Google Brain. تُستخدم هذه المكتبة للبحث والإنتاج في جوجل. ووفقاً لجيف دين، رئيس قسم الذكاء الاصطناعي في جوجل:
تُستخدم اليوم بكثافة في أنظمة التعرف على الكلام لدينا، في منتج جديد لصور جوجل، جيميل، وبحث جوجل.
أفضل جزء هو أن المطورين في جميع أنحاء العالم يمكنهم استخدام هذه المكتبة لمعالجة مشاكل العالم الحقيقي.
💡 نصيحة: هذا فيديو رائع عن TensorFlow صنعته جوجل: TensorFlow in 5 Minutes.
هذه مكتبتان أخريان شائعتان من مكتبات بايثون المستخدمة في تعلم الآلة:
Keras– مكتبة شبكات عصبية مفتوحة المصدر مكتوبة بلغة بايثون.PyTorch– مكتبة تعلم آلة مفتوحة المصدر تستخدم لتطوير وتدريب الشبكات العصبية.
مشاريع تعلم الآلة في بايثون
إمكانات تعلم الآلة لا نهاية لها حقاً. يمكن تطبيقها على أي مجال وسياق يمكن أن يخطر ببالك تقريباً. إذا كانت المهمة تتطلب التعلم من الأنماط والتنبؤ بالمخرجات، فإن نموذج تعلم الآلة يمكن أن يساعد بالتأكيد. على سبيل المثال، لإعطائك فكرة عن نوع المشاريع التي يمكنك إنشاؤها، يتضمن منهج freeCodeCamp شهادة مجانية في تعلم الآلة باستخدام بايثون:

خلال هذه الشهادة، ستعمل على إكمال هذه المشاريع:
- حجر ورقة مقص (
Rock Paper Scissors). - مصنف صور القطط والكلاب (
Cat and Dog Image Classifier). - محرك توصية الكتب باستخدام أقرب الجيران K (
K-Nearest Neighbors). - حاسبة تكاليف الصحة بالانحدار الخطي (
Linear Regression health costs calculator). - مصنف الرسائل النصية القصيرة بالشبكة العصبية (
Neural Network SMS classifier).
المزيد من أمثلة تطبيقات العالم الحقيقي
يمكنك العثور على المزيد من الأمثلة لتطبيقات تعلم الآلة في Kaggle، وهو "مجتمع عبر الإنترنت لعلماء البيانات وممارسي تعلم الآلة" مملوك لجوجل. في هذه المنصة، يمكنك ممارسة مهاراتك في بايثون وتعلم الآلة من خلال العمل في المشاريع والمشاركة في المسابقات. لإعطائك فكرة عن نوع المشاريع التي يمكنك معالجتها باستخدام تعلم الآلة، تضمنت المسابقات السابقة في Kaggle ما يلي:
- التنبؤ بتدهور وظائف الرئة.
- التنبؤ بالبقاء على قيد الحياة في تايتانيك.
- بناء أدوات لمراقبة أعداد الطيور.
- تسمية المعالم الشهيرة.
- التنبؤ بانتشار
COVID-19. - تقدير مبيعات الوحدات لسلع التجزئة في
Walmart. - تحديد مقاطع الفيديو التي تحتوي على تلاعبات بالوجه أو الصوت.
- التنبؤ بأوقات الانتظار عند تقاطعات المدن الرئيسية.
- الكشف عن الاحتيال من معاملات العملاء.
- التنبؤ بإيرادات شباك التذاكر العالمية لفيلم.
- التنبؤ بتبني الحيوانات الأليفة.
- تحديد المخاطر عندما يكون الطيارون مشتتين، نعسانين، أو في حالات معرفية خطيرة أخرى.
كما ترى، في هذه القائمة القصيرة من المشاريع وحدها، تتراوح التطبيقات من الطب إلى الأعمال، ومن البيولوجيا إلى الكشف عن المخاطر، ومن الكشف عن الاحتيال إلى معالجة الصور. الإمكانيات لا حصر لها حقاً عندما تعالج مشاكل العالم الحقيقي باستخدام تعلم الآلة.
موارد التعلم
قناة freeCodeCamp على يوتيوب لديها هذه الدروس التعليمية المفيدة لمساعدتك على البدء في تعلم الآلة باستخدام بايثون:
TensorFlow 2.0 Complete Course - Python Neural Networks for Beginners Tutorial.Develop an AI to play Connect Four - Python Tutorial.Scikit-Learn Course - Machine Learning in Python Tutorial.PyTorch for Deep Learning - Full Course / Tutorial.
تطوير الويب: بناء العمود الفقري للإنترنت

تُستخدم بايثون في مجال تطوير الويب لبناء الواجهة الخلفية (back-end) لتطبيقات الويب. دعنا نبدأ هذا القسم بالحديث قليلاً عن ماهية الواجهة الخلفية وكيف تساعدنا في إنشاء تطبيقات الويب.
بايثون لتطوير الويب من جانب الخادم (Back-End)
في تطبيق الويب، يُطلق على جميع الأكواد المستخدمة للتفاعل مع المستخدم وإنشاء ما يراه المستخدم اسم الجزء الأمامي (front-end) من التطبيق. تُستخدم بايثون لبرمجة الوظائف التي تعمل خلف الكواليس في التطبيق، وهو الجزء الذي يدعم جميع وظائف التطبيق ولكنك لا تراه مباشرة على الشاشة. يتولى هذا الجزء جانب الخادم (server-side) من التطبيق، ويتفاعل مع جميع قواعد البيانات الضرورية عندما يطلب المستخدم بيانات. يعيد البيانات المطلوبة إلى المستخدم لجعل التطبيق يعمل كما هو متوقع.
💡 نصيحة: يشمل تطوير الويب الشامل (Full-Stack Web Development) كلاً من الواجهة الأمامية والخلفية لتطبيق الويب لجعله قابلاً للعرض للمستخدم أثناء العمل مع قواعد البيانات.
أطر عمل الويب (Web Frameworks)
هذه بعض أطر عمل الويب الشهيرة في بايثون:
Django: "إطار عمل ويب بايثون عالي المستوى يشجع على التطوير السريع والتصميم النظيف والعملي."Flask: إطار عمل مصغر (microframework) شائع جداً يستخدم لتطوير تطبيقات الويب في بايثون.Pyramid: "إطار عمل ويب بايثون صغير، سريع، وعملي."Web2Py: "إطار عمل مفتوح المصدر وكامل المكدس (full-stack) للتطوير السريع لتطبيقات الويب السريعة، القابلة للتطوير، الآمنة، والمحمولة التي تعتمد على قواعد البيانات."Bottle: "إطار عمل ويب مصغرWSGIسريع، بسيط، وخفيف الوزن لبايثون."
موارد التعلم
قناة freeCodeCamp على يوتيوب لديها دروس تعليمية مجانية رائعة لتعلم تطوير الويب في بايثون:
Python Django Web Framework - Full Course for Beginners.Learn Flask for Python - Full Tutorial.Web Programming with Flask - Intro to Computer Science - Harvard's CS50 (2018).Full stack Python Flask tutorial - Build a social network.
هذه أيضاً موارد مجانية رائعة لتعلم كيفية العمل مع هذه الأطر:
تعليم علوم الحاسوب: تبسيط التعلم

تلعب بايثون حالياً دوراً رئيسياً في تعليم علوم الحاسوب حول العالم. دعنا نرى لماذا.
لماذا بايثون؟
تُستخدم بايثون على نطاق واسع كأداة تعليمية للأسباب التالية:
- سهلة التعلم: تركيبتها بسيطة ويمكن تعلمها بسرعة. يبدأ الطلاب في الغوص في جوانب أكثر تقدماً من علوم الحاسوب بسرعة أكبر بكثير مما هو عليه الحال مع لغات البرمجة الأخرى.
- قوية: تُستخدم في تطبيقات العالم الحقيقي، لذلك يبدأ الطلاب على الفور في اكتساب مهارات قيمة لمسيرتهم المهنية.
- متعددة الاستخدامات: تدعم نماذج برمجة مختلفة بما في ذلك البرمجة الأمرية، البرمجة الوظيفية، البرمجة الإجرائية، والبرمجة الشيئية.
صرح مبتكر لغة بايثون، Guido van Rossum، قائلاً:
الآن، أعتقد أن بايثون أسهل بكثير لتعليم الطلاب البرمجة وتعليمهم
CأوC++أوJavaفي نفس الوقت لأن جميع تفاصيل اللغات أصعب بكثير.
تركيبة بايثون بسيطة ومباشرة، لذلك يمكن للطلاب البدء في تعلم التفكير الحسابي ومهارات حل المشكلات بسرعة أكبر بكثير، وهو عادة الهدف الرئيسي لدورات علوم الحاسوب التمهيدية.
بايثون في الفصول الدراسية والتعلم عبر الإنترنت
قررت العديد من الجامعات والمدارس حول العالم تدريس دورات البرمجة وعلوم الحاسوب التمهيدية باستخدام بايثون. على سبيل المثال، جامعة MIT، إحدى الجامعات الرائدة عالمياً في مجال التكنولوجيا، تدرس علوم الحاسوب والبرمجة التمهيدية باستخدام بايثون (في كل من النسخ داخل الحرم الجامعي والنسخ عبر الإنترنت من الدورة على edX). ووفقاً لمقال نشرته MIT News عندما وصل عدد المسجلين في النسخة عبر الإنترنت من الدورة إلى 1.2 مليون، أصبحت الدورة "أكثر الدورات المفتوحة عبر الإنترنت (MOOC) شعبية في تاريخ MIT". يوضح هذا بوضوح أن شعبية بايثون تستمر في الارتفاع. في المقال، يمكنك العثور على شهادات من الطلاب الذين تعلموا بايثون وكيف حسنت هذه المعرفة الجديدة حياتهم. في المقال، صرحت الأستاذة آنا بيل، محاضرة في قسم EECS في MIT، قائلة:
في جوهرها، سلسلة
6.00تعلم التفكير الحسابي… تفعل ذلك باستخدام لغة برمجة بايثون، ولكن الدورة تعلم أيضاً مفاهيم البرمجة التي يمكن تطبيقها في أي لغة برمجة أخرى.
يوضح هذا بوضوح إمكانات بايثون كأداة تعليمية. يمكن استخدامها لتعليم مفاهيم ذات مستوى أعلى يمكن تطبيقها على لغات برمجة أخرى. وتفعل ذلك دون الطبقة الإضافية من التعقيد التي قد تضيفها تركيبة لغات برمجة أخرى مثل Java أو C إلى عملية التعلم.
خلال السنوات القليلة الماضية، أصبحت الدورات التدريبية عبر الإنترنت جزءاً مهماً من الحياة اليومية للمتعلمين من جميع الأعمار في جميع أنحاء العالم. وقد توسعت مجموعة الدورات والموارد المجانية عبر الإنترنت بشكل كبير في السنوات القليلة الماضية. على سبيل المثال، يتضمن منهج freeCodeCamp ثلاث شهادات مجانية مع مشاريع لمساعدتك على توسيع مهاراتك في بايثون في المجالات الرئيسية ذات الطلب العالي عالمياً:
- الحوسبة العلمية باستخدام بايثون (
Scientific Computing with Python). - تحليل البيانات باستخدام بايثون (
Data Analysis with Python). - تعلم الآلة باستخدام بايثون (
Machine Learning with Python).
تقدم جامعة هارفارد أيضاً هذه الدورات التدريبية عبر الإنترنت التي يمكن مراجعتها مجاناً:
- مقدمة
CS50لعلوم الحاسوب (CS50's Introduction to Computer Science). - برمجة الويب
CS50باستخدام بايثون وجافاسكريبت (CS50's Web Programming with Python and JavaScript). - مقدمة
CS50للذكاء الاصطناعي باستخدام بايثون (CS50's Introduction to Artificial Intelligence with Python).
لقد أصبحت بايثون بالتأكيد أداة رئيسية حسنت تعليم علوم الحاسوب في جميع أنحاء العالم. وستستمر في القيام بذلك في المستقبل. إذا كنت تفكر في تدريس دورة باستخدام بايثون أو تعلم بايثون، فأنا أضمن لك أن وقتك وجهدك سيكونان يستحقان كل هذا العناء.
الرؤية الحاسوبية ومعالجة الصور: عيون الذكاء الاصطناعي

تُستخدم بايثون في الرؤية الحاسوبية ومعالجة الصور، وهما مجالان يتوسعان بسرعة. الهدف من معالجة الصور هو معالجة صورة، وتطبيق تحويلات عليها، وإرجاع نسخة جديدة من الصورة الأصلية. في المقابل، هدف الرؤية الحاسوبية أكثر تعقيداً لأنها تحاول جعل الحاسوب يفهم ويفسر الصورة ومحتواها.
معالجة الصور (Image Processing)
لنبدأ بمعالجة الصور. باستخدام مكتبة بايثون، يمكنك إجراء عمليات مثل:
- القص، القلب، والتدوير.
- معالجة التعرض وقنوات الألوان.
- اكتشاف الحواف والخطوط.
- إضافة الفلاتر واستعادة الصور.
الرؤية الحاسوبية (Computer Vision)
الآن دعنا نتعمق في الرؤية الحاسوبية. إذا بدأت في البحث في هذا الموضوع، فقد تتفاجأ بتطبيقاتها الحالية. بعضها:
- الملاحة.
- اكتشاف الكائنات والأحداث.
- التعرف على الوجوه.
- تصنيف الصور.
هذا المجال العلمي مهم جداً لدرجة أن جوجل طورت أداة تسمى Cloud Vision، والتي تحتوي على نسخة بايثون للمطورين لدمج هذه الوظيفة في برامجهم. ووفقاً لبرنامج "استخدام Vision API مع بايثون" التعليمي في Google Codelabs، فإن Google Cloud Vision API:
يسمح للمطورين بدمج ميزات اكتشاف الرؤية بسهولة داخل التطبيقات، بما في ذلك تسمية الصور، واكتشاف الوجوه والمعالم، والتعرف البصري على الأحرف (
OCR)، ووضع علامات على المحتوى الصريح.
توفر هذه المجموعة من الأدوات وظائف لاكتشاف الوجوه، واكتشاف المعالم، واكتشاف الشعارات، واكتشاف التسميات، واكتشاف النصوص، والمزيد.
💡 نصيحة: أحد أروع تطبيقات الرؤية الحاسوبية هو تطوير برامج للتحكم في السيارات ذاتية القيادة. تحتاج هذه المركبات إلى "رؤية" مكان قيادتها، ومكان المسار، وما هي الكائنات التي تحيط بها (بما في ذلك المركبات الأخرى). تلعب الرؤية الحاسوبية دوراً رئيسياً في هذه الوظيفة.
مكتبات بايثون
هذه بعض المكتبات الرائعة للرؤية الحاسوبية ومعالجة الصور:
OpenCV: "مكتبة برامج مفتوحة المصدر للرؤية الحاسوبية وتعلم الآلة". نسختها البايثونية تسمىOpenCV-Python.scikit-image: "مجموعة من الخوارزميات المستخدمة لمعالجة الصور".NumPy: يمكن استخدامها لمعالجة وحدات البكسل في الصورة كمصفوفة ثنائية الأبعاد.SciPy: تحتوي حزمةscipy.ndimageعلى "وظائف مختلفة لمعالجة الصور متعددة الأبعاد."
تطوير الألعاب: إطلاق العنان للإبداع

تشكل الألعاب بالتأكيد حياتنا وتخلق ذكريات لا تُنسى. وستظل جزءاً من مجتمعنا في السنوات القادمة. بايثون موجودة بالفعل، تضيء شرارة إنشاء الألعاب.
أطر عمل بايثون لتطوير الألعاب
وفقاً لوثائق بايثون الرسمية، هناك إطاران رئيسيان من أطر عمل بايثون المستخدمة لتطوير الألعاب:
pygame: "الحزمة الأصلية ولا تزال نشطة جداً لتطوير الألعاب باستخدام بايثون. تسمح لبايثون بالتحدث إلىSDL، وهي مكتبة وسائط متعددة متعددة المنصات. ونظراً لأنه يجب تجميعها لكل منصة وكل إصدار بايثون، فقد يكون هناك تأخير عند ظهور إصدار بايثون جديد."pyglet: هذا هو "الوافد الجديد، يعتمد علىOpenGL. ونظراً لأنه حزمة بايثون بحتة، يمكن استخدامه كما هو حتى عند إصدار إصدار بايثون جديد (باستثناء الانتقال من بايثون 2 إلى بايثون 3)."
يمكنك أيضاً استخدام وحدة turtle لإنشاء ألعاب بسيطة. Turtle هي وحدة بايثون مدمجة يتم تثبيتها تلقائياً عند تثبيت بايثون على جهاز الكمبيوتر الخاص بك. تساعدك على إنشاء ألعاب برسومات بسيطة وواجهة مستخدم بسيطة.
موارد التعلم
إذا كنت ترغب في تعلم تطوير الألعاب في بايثون، فإن قناة freeCodeCamp على يوتيوب لديها هذه الدروس التعليمية المجانية الرائعة:
Learn Python by Building Five Games - Full Course.Python and Pygame Tutorial - Build Tetris! Full GameDev Course.Snake Game Python Tutorial.
الطب والصيدلة: ابتكارات لإنقاذ الأرواح

لدى بايثون أيضاً تطبيقات مذهلة في المجال الطبي. ستندهش من كيفية دمج التكنولوجيا مع المعرفة الطبية لتقديم تشخيصات وعلاجات دقيقة وفعالة للمرضى.
التطبيقات
بعض الأمثلة على استخدام بايثون في الطب والصيدلة تشمل:
- إجراء تشخيصات سريرية بناءً على السجلات الطبية للمرضى وأعراضهم.
- تحليل البيانات الطبية.
- إنشاء نماذج حاسوبية لتسريع عملية تطوير الأدوية الجديدة.
تتضمن هذه التطبيقات الواسعة آلاف الأمثلة حول العالم. لقد اخترت بعضها لتوضيح كيف تشكل بايثون هذا المجال. دعنا نلقي نظرة عليها.
قصة نجاح صيدلانية: AstraZeneca
وفقاً لوثائق بايثون الرسمية، استخدمت إحدى شركات الأدوية الرائدة عالمياً، AstraZeneca، بايثون لتحسين نماذجها الحسابية الحالية لجعلها "أكثر قوة، قابلية للتوسع، وقابلية للصيانة". استخدم الباحثون هذه النماذج لمحاكاة التركيب الكيميائي للجزيئات وتأثيرها في الجسم. ساعد هذا العلماء على تحديد الجزيئات المحتملة للأدوية الجديدة والبدء في اختبارها بسرعة أكبر في المختبر. عندما انضم أندرو دالك، وهو "داعية معروف لبايثون في الكيمياء الحسابية والبيولوجيا"، إلى الفريق، أقنع الفريق بأن بايثون كانت بالضبط ما يحتاجونه. تم اختيار بايثون لهذا العمل لأنها واحدة من أفضل اللغات المتاحة للعلماء الفيزيائيين، أي للأشخاص الذين ليس لديهم خلفية في علوم الحاسوب. صرح قائلاً:
تم تصميم بايثون لحل مشاكل العالم الحقيقي التي يواجهها مبرمج خبير. والنتيجة هي لغة تتوسع بشكل جيد من البرامج النصية الصغيرة التي يكتبها كيميائي إلى الحزم الكبيرة التي يكتبها مطور برامج.
مذهل، أليس كذلك؟ يمكن لبايثون أن تدعم النماذج الحسابية التي تستخدمها المختبرات الصيدلانية لتطوير أدوية جديدة.
تحديد خلايا الدم الحمراء (RBC)
تطبيق طبي آخر مثير للاهتمام لبايثون يتعلق بعلم أمراض الدم. عادةً، يقوم المتخصصون بتحليل اختبارات الدم عن طريق عد وتحديد الخلايا يدوياً، ولكن يمكن تحسين ذلك بمساعدة الأتمتة. وجد الباحثون أن بايثون يمكن أن تكون الأداة المناسبة لهذه المهمة. دعنا نرى مشروعاً مثيراً للاهتمام.
مشروع IdentiCyte
الهدف من هذا المشروع هو تحديد وتصنيف أشكال خلايا الدم الحمراء بناءً على الصور المأخوذة من المجاهر الضوئية. ووفقاً لهذا المقال، "يمكن أن يساعد شكل خلايا الدم الحمراء في تشخيص الأمراض والاضطرابات مثل اللوكيميا، فقر الدم المنجلي، والملاريا." تم تطوير المشروع من قبل باحثين من معهد أستراليا لأبحاث معالجة الموارد الحيوية (Bioresource Processing Research Institute Australia). وقد تمت برمجته بلغة بايثون واستخدم حزم ومكتبات بايثون لمعالجة الصور مثل numpy، scipy، opencv-python، scikit-learn، و matplotlib.
حزم بايثون الطبية
pyGeno: حزمة بايثون مفتوحة المصدر طوّرها طارق داودا في معهد أبحاث المناعة والسرطان (IRIC). وهي مخصصة "لتطبيقات الطب الدقيق التي تدور حول الجينوميات والبروتيوميات". تعمل مع الجينومات المرجعية والشخصية.MedPy: مكتبة بايثون مفتوحة المصدر "لمعالجة الصور الطبية في بايثون، وتوفر وظائف أساسية لقراءة وكتابة ومعالجة الصور الكبيرة ذات الأبعاد التعسفية."
تطبيقات طبية في العالم الحقيقي (أمثلة)
- قدم غوستاف بيلتيكي مثالاً آخر خلال حديثه في
PyData Berlin 2018بعنوان "Python in Medicine: analysing data from mechanical ventilators". كان الهدف من بحثه هو "تفسير مجموعات البيانات الكبيرة المسترجعة من المعدات الحديثة المستخدمة في العناية المركزة لحديثي الولادة، وأجهزة التنفس الصناعي، وشاشات المرضى." - في
PyCon 2019، قدمت جيل كيتس هذا العرض التقديمي بعنوان "How to Build a Clinical Diagnostic Model in Python".
البيولوجيا والمعلوماتية الحيوية: فك شفرة الحياة

لدى بايثون أيضاً تطبيقات مذهلة في عالم البيولوجيا والمعلوماتية الحيوية. وتشمل هذه معالجة تسلسلات الحمض النووي (DNA)، ومحاكاة ديناميكيات وتراث السكان، ونمذجة الهياكل الكيميائية الحيوية.
Biopython
Biopython هو إطار عمل بايثون يحتوي على "أدوات متاحة مجاناً للحوسبة البيولوجية". هدفه هو "تلبية احتياجات العمل الحالي والمستقبلي في المعلوماتية الحيوية". ووفقاً لوثائقه، يتضمن هذا الإطار وظائف مثل القدرة على:
- العمل مع التسلسلات وإجراء العمليات الشائعة عليها مثل النسخ، الترجمة، وحسابات الوزن.
- الاتصال بقواعد البيانات البيولوجية.
- إجراء تصنيف البيانات باستخدام أقرب الجيران K (
K-Nearest Neighbors)، نايف بايز (Naive Bayes)، وآلات المتجهات الداعمة (Support Vector Machines). - العمل مع الأشجار التطورية (
phylogenetic trees) ووراثة السكان.
تنص الوثائق على أن "هدف Biopython هو جعل استخدام بايثون للمعلوماتية الحيوية سهلاً قدر الإمكان عن طريق إنشاء وحدات وفئات عالية الجودة وقابلة لإعادة الاستخدام."
Rosalind: ممارسة بايثون بحل تحديات المعلوماتية الحيوية

Rosalind هي "منصة لتعلم المعلوماتية الحيوية من خلال حل المشكلات." وهي "مجانية ومتاحة للجمهور" (تشير صفحة الأسئلة الشائعة إلى أنها في وضع البيتا). يمكن استخدام بايثون لحل التحديات على المنصة. ونظراً لأن هذه لغة برمجة شائعة جداً في المنصة، يوجد قسم "قرية بايثون" (Python Village) حيث يمكنك تعلم أساسيات بايثون قبل معالجة خوارزميات المعلوماتية الحيوية. يحل المستخدمون المشكلات عن طريق تشغيل حلولهم على أجهزة الكمبيوتر الخاصة بهم، ومعالجة مجموعة البيانات المعطاة، ونسخ/لصق المخرجات للتحقق من الإجابة.
💡 نصيحة: يحتفل اسم المشروع بـ Rosalind Franklin، "التي سهلت بلورات الأشعة السينية الخاصة بها مع Raymond Gosling اكتشاف اللولب المزدوج للحمض النووي بواسطة Watson و Crick."
الحزم وأطر العمل
ProDy: حزمة مجانية ومفتوحة المصدر "لتحليل ديناميكيات الهيكل البروتيني" طوّرها مختبرBaharفي جامعة بيتسبرغ.PySB: "إطار عمل لبناء نماذج رياضية للأنظمة الكيميائية الحيوية كبرامج بايثون" طوّره أعضاء مختبرLopezفي جامعة فاندربيلت ومختبرSorgerفي كلية الطب بجامعة هارفارد.The Community Simulator: هذه "حزمة بايثون متاحة مجاناً لمحاكاة ديناميكيات أعداد الميكروبات بطريقة قابلة للتكرار، شفافة، وقابلة للتطوير" طوّرها باحثون في جامعة بوسطن.
💡 نصيحة: إذا كنت ترغب في معرفة المزيد عن تطبيقات بايثون في المعلوماتية الحيوية، إليك حديث لمارتن شفايتزر في PyCon Australia: "Python for Bioinformatics for learning Python".
علم الأعصاب وعلم النفس: فهم العقل البشري

لدى بايثون أيضاً تطبيقات في أبحاث علم الأعصاب وعلم النفس التجريبي.
بايثون في علم الأعصاب
وفقاً لمقال "Python in neuroscience" الذي كتبه باحثون من مركز محاكاة الدماغ، المدرسة الفنية الاتحادية في لوزان، جنيف، سويسرا:
أصبحت الحوسبة ضرورية في جميع العلوم، لاكتساب البيانات وتحليلها، والأتمتة، واختبار الفرضيات عبر النمذجة والمحاكاة.
فيما يتعلق ببايثون، صرحوا بأن:
أصبح واضحاً لنا في عام 2007 أننا كنا على وشك ظهور نظام بيئي لبايثون في علم الأعصاب، لا سيما في علم الأعصاب الحسابي والتصوير العصبي، ولكن أيضاً في تحليل البيانات الفيزيولوجية الكهربائية وفي الفيزياء النفسية.
كما ترى، تتوسع بايثون والحوسبة في جميع العلوم.
PsychoPy
PsychoPy هي "حزمة مفتوحة المصدر لتشغيل التجارب في بايثون" مدعومة من جامعة نوتنغهام. ووفقاً للوثائق الرسمية لهذه الحزمة:
تُستخدم من قبل العديد من المختبرات حول العالم للفيزياء النفسية، علم الأعصاب المعرفي، وعلم النفس التجريبي.
يشير الموقع الرسمي لهذه الحزمة إلى أنها:
- سهلة التعلم.
- دقيقة بما يكفي للفيزياء النفسية.
- مرنة.
- تعتمد على الإنترنت أو المختبر حسب اختيار المستخدم.
علم الفلك: استكشاف الكون

لدى بايثون أيضاً تطبيقات في علم الفلك والفيزياء الفلكية. دعنا نرى ثلاثاً من حزم بايثون الرئيسية المستخدمة في هذا المجال العلمي:
Astropy
تحتوي حزمة Astropy على "فئات، أدوات مساعدة، وإطار عمل للحزم يهدف إلى توفير أدوات فلكية شائعة الاستخدام." Astropy جزء من مشروع أكبر يسمى The Astropy Project، وهو "جهد مجتمعي لتطوير حزمة أساسية مشتركة لعلم الفلك في بايثون وتعزيز نظام بيئي من حزم الفلك القابلة للتشغيل المتبادل." ووفقاً لصفحة "حول"، أحد أهدافها هو "تحسين قابلية الاستخدام، قابلية التشغيل المتبادل، والتعاون بين حزم بايثون الفلكية."
💡 نصيحة: يمكنك رؤية أمثلة للمشاريع المصنوعة باستخدام Astropy في معرض الأمثلة.
SunPy
توصف حزمة SunPy بأنها "بيئة تحليل بيانات شمسية مطورة مجتمعياً، مجانية ومفتوحة المصدر لبايثون." وهي مبنية على قدرات حزم بايثون مثل NumPy، SciPy، Matplotlib، و Pandas.

صور من معرض أمثلة SunPy
SpacePy
حزمة SpacePy هي "حزمة لبايثون، تستهدف علوم الفضاء، وتهدف إلى تسهيل تحليل البيانات الأساسية، النمذجة، والتصور." ووفقاً لوثائقها الرسمية:
يسعى مشروع
SpacePyإلى تعزيز معايير بحث دقيقة ومفتوحة من خلال توفير بيئة مفتوحة لتطوير الأكواد.
ووفقاً لوصف مستودع GitHub الخاص بها، فإنها تحتوي على فئات حقبة متراكبة، تتبع قشرة الانجراف، الوصول إلى نماذج المجال المغناطيسي، تتبع الخطوط الانسيابية، حدود الثقة التمهيدية، تحويلات الوقت والإحداثيات، والمزيد.
تطبيقات أخرى: آفاق بايثون المتعددة
يمكن تطبيق بايثون أيضاً في العديد من المجالات الأخرى، بما في ذلك:
- الروبوتات: يمكن استخدام بايثون لبرمجة الروبوتات. إحدى المكتبات المكتوبة لهذا الغرض هي
pybotics، "صندوق أدوات بايثون مفتوح المصدر لحركيات الروبوت ومعايرته." - المركبات ذاتية القيادة: يمكن استخدام بايثون لبرمجة البرامج التي تتحكم في السيارات ذاتية القيادة. تحتاج هذه السيارات إلى رؤية حاسوبية لـ "رؤية" مكان قيادتها، ومكان المسار، وما هي الكائنات التي تحيط بها.
- الأرصاد الجوية: تحتوي حزمة
climate-indicesعلى "تطبيقات بايثون لخوارزميات مؤشرات المناخ المختلفة التي توفر صورة جغرافية وزمنية لشدة شذوذات هطول الأمطار ودرجة الحرارة المفيدة لمراقبة المناخ والبحث." - الأعمال: يمكن أن تكون بايثون أداة قوية لتحليل البيانات التي تولدها الشركات والتنبؤ بالاتجاهات المستقبلية.
- تطوير واجهة المستخدم الرسومية (GUI): يمكن استخدام بايثون لإنشاء واجهات مستخدم رسومية باستخدام أدوات مثل
tkinter. إذا كنت مهتماً بمعرفة المزيد عن هذا، فإنfreeCodeCampلديها برنامج تعليمي رائع على يوتيوب:Tkinter Course - Create Graphic User Interfaces in Python Tutorial.
الخلاصة التقنية
لقد أثبتت بايثون، بلا شك، أنها أكثر من مجرد لغة برمجة؛ إنها قوة دافعة للابتكار عبر طيف واسع من المجالات التقنية والعلمية. من تحليل البيانات المعقدة وتصورها باستخدام مكتبات مثل NumPy و Pandas و Matplotlib، إلى تمكين أنظمة تعلم الآلة الذكية عبر TensorFlow و PyTorch، مروراً ببناء تطبيقات الويب القوية بواسطة Django و Flask، فإن بصمة بايثون لا يمكن إنكارها. إن بساطتها وقابليتها للقراءة تجعلها أداة مثالية للتعليم، مما يسرع من فهم المفاهيم الحاسوبية الأساسية. علاوة على ذلك، فإن دورها في الرؤية الحاسوبية، تطوير الألعاب، وحتى في المجالات المتخصصة مثل الطب، البيولوجيا، علم الأعصاب، وعلم الفلك، يؤكد على مرونتها وقدرتها على التكيف. إن النظام البيئي الغني بالمكتبات والأطر، بالإضافة إلى مجتمعها النشط، يضمن استمرار بايثون في قيادة عجلة التقدم التكنولوجي، مما يفتح أبواباً لا حصر لها للمطورين والباحثين على حد سواء. إن تعلم بايثون اليوم ليس مجرد اكتساب مهارة برمجية، بل هو استثمار في فهم وتشكيل مستقبل التكنولوجيا.
في الختام
هناك العديد من تطبيقات بايثون في كل مجال يمكن أن تتخيله. آمل أن يكون هذا المقال قد أعطاك فكرة عن النطاق الواسع لتطبيقات هذه اللغة البرمجية في العالم الحقيقي في الصناعات التي تشكل عالمنا حالياً. تذكر أنه بغض النظر عن المجال الذي تعمل فيه أو المجال الذي ترغب في العمل فيه، فإن تعلم بايثون سيفتح لك بالتأكيد العديد من الأبواب. إنها هنا لتبقى. وقد غيرت وحسنت عالمنا الحالي وستستمر في القيام بذلك لسنوات عديدة. أتمنى حقاً أن يكون المقال قد نال إعجابك ووجدته مفيداً.