دليل بسيط لإنشاء دفاتر ملاحظات تفاعلية باستخدام Jupyter
Jupyter Notebook هو أداة قوية تُستخدم على نطاق واسع لتحليل البيانات وكتابة الأكواد التفاعلية بطريقة منظمة وسهلة الاستخدام. سواء كنت مبتدئًا في البرمجة أو محترفًا تبحث عن طريقة مرنة لتنظيم مشاريعك، فإن Jupyter يقدم لك البيئة المثالية للتفاعل مع الكود، توثيق الخطوات، وعرض النتائج. في هذا المقال، ستتعرف على خطوات بسيطة ومباشرة لإنشاء أول دفتر ملاحظات تفاعلي واستخدامه بكفاءة.
ملخص
- يُنشئ Jupyter مستندات تفاعلية لخلط الكود والنص والرسومات.
- يُشتهر Jupyter بمشاركة الكود والنتائج في الحوسبة العلمية.
- تتكون دفاتر Jupyter من خلايا Markdown والكود التي يمكن إنشاؤها ونقلها بسهولة.
قد تفكر في البرمجة على أنها كتابة كود في مُفسِّر أو محرر نصوص أو بيئة تطوير متكاملة. أدخل Jupyter، وهي طريقة برمجة مختلفة تمامًا تمزج بحرية بين النص والكود والرسومات في مستندات تفاعلية. إنها قوية وسهلة الاستخدام أيضًا.
ما هو Jupyter؟
Jupyter هو “واجهة دفتر ملاحظات” تتيح لك إنشاء “برامج متعلمة”، وهي برامج تخلط الكود بالنص التوضيحي. Jupyter هو فرع من مشروع IPython، والذي يهدف إلى إنشاء وضع تفاعلي أفضل لـ Python. في حين أن Jupyter يدمج IPython، إلا أنه لا يزال متاحًا كبرنامج مستقل. على الرغم من الاسم، لا يدعم Jupyter Python فقط. Python هو أحد “نوى” اللغة العديدة التي يمكنك استخدامها معه.
ربما سمعت أن البرامج الجيدة يجب أن تحتوي على تعليقات تشرح أي شيء قد يربك الأشخاص الآخرين الذين يقرؤون الكود الخاص بك، أو نفسك بعد بضعة أشهر من لمس جزء من الكود، لكن دفتر الملاحظات يأخذ الأمر إلى المستوى التالي. يمكنك إنشاء مستندات تشرح ما تفعله وتخلط بين الرسومات والكود.
فيما يلي مثال أنشأته في وقت فراغي باستخدام Python وSeaborn لرسم خط الاتجاه لمجموعة بيانات لعدد ركاب الخطوط الجوية من أواخر الخمسينيات إلى أوائل الستينيات. إنه مثال على أنواع الأشياء التي يمكنك القيام بها.
يعد Jupyter شائعًا في الحوسبة العلمية، وخاصة في تحليل البيانات وعلوم البيانات، لأنه يوفر طريقة سهلة للباحثين لمشاركة نتائجهم، ولكن ليس عليك أن تكون عالمًا لاستخدامه. يمكنك استخدام Jupyter لمشاريع الترميز العادية والحصول على طريقة سهلة لإظهار ما تفعله للأشخاص الآخرين. إنه أسلوب مختلف من البرمجة يدور حول المستندات التفاعلية بدلاً من مجرد تشغيل التعليمات البرمجية.
تتمثل ميزة استخدام Jupyter بدلاً من المترجم التفاعلي العادي مثل Python في أن Jupyter يحفظ تلقائيًا سجلًا لما تفعله. في مجالات مثل العلوم والهندسة، هذه هي الطريقة التي “تُظهر بها عملك”.
Jupyter Notebook أم JupyterLab؟
يتوفر Jupyter بنوعين: Jupyter Notebook القياسي وJupyterLab. يهدف الأخير إلى أن يكون إصدارًا أكثر اكتمالاً، مشابهًا لبيئة التطوير المتكاملة. حتى أن مشروع Jupyter أوقف استخدام Jupyter الأقدم ووضعه في وضع الصيانة، لكنه في النهاية أخرج Jupyter الأصلي من الخدمة ويحافظ عليه في نفس الوقت بسبب شعبيته المستمرة.
ستتناول هذه المقالة واجهة Jupyter Notebook القياسية لأنها أسهل في البدء من JupyterLab. لا يزال مطورو Jupyter يعتبرون JupyterLab مستقبل المشروع، وقد ترغب في التحقق منه بمجرد أن تعتاد على Jupyter لمعرفة ما إذا كان مناسبًا لك.
تثبيت Jupyter
تثبيت Jupyter سهل.
أبسط طريقة لتثبيت Jupyter هي من خلال pip:
pip install notebook
هناك خيار آخر وهو من خلال Conda أو Mamba، على الرغم من أن هذه البيئات أكثر تعقيدًا ومخصصة لعلماء البيانات وغيرهم من المستخدمين المتقدمين. كما أنها شائعة في مديري حزم توزيعات Linux، لذا تحقق من مستودعاتك.
بدء تشغيل Jupyter
لبدء تشغيل Jupyter في غلاف Linux، اكتب:
jupyter notebook
إذا لم يفتح تلقائيًا، فحاول فتح المتصفح على localhost:8888. سترى مجموعة من معلومات بدء التشغيل ثم تفتح نافذة متصفح تعرض واجهة Jupyter. ستبدأ بنوع من مدير الملفات المستند إلى المتصفح.
إنشاء دفتر ملاحظات جديد
لإنشاء دفتر ملاحظات جديد، انتقل إلى قائمة “ملف” وانقر فوق “جديد” ثم حدد “دفتر ملاحظات”. ستفتح علامة تبويب جديدة تحتوي على دفتر الملاحظات. بشكل افتراضي، سيتم تسميته “بدون عنوان”. لإعادة تسميته، انقر فوق العنوان. ستظهر نافذة منبثقة حيث يمكنك تغيير اسم دفتر الملاحظات. انقر فوق “حفظ” لإعادة تسميته. نظرًا لأن هذا دفتر ملاحظات Python، فإنه يحتوي على الامتداد .ipynb. عند بدء تشغيل Jupyter، يمكنك العثور على دفتر الملاحظات الخاص بك في الدليل الذي أنشأته فيه.
سيُطلب منك تشغيل أي من نوى البرامج المثبتة التي تريد تشغيلها. سنستخدم Python في هذا البرنامج التعليمي نظرًا لأنها لغة شائعة وسهلة الفهم.
تشغيل الخلايا ونقلها
يتكون دفتر الملاحظات من خلايا يمكن أن تحتوي على نص أو كود. يمكنك تحديد الخلية التي ستكون عليها من القائمة المنسدلة التي تقول “كود” أو “مارك داون”. بشكل افتراضي، ستكون الخلايا كودًا.
يمكنك إدخال نص في وضع مارك داون باستخدام صيغة مارك داون القياسية. في خلية الكود، ستستخدم أي نواة لغة اخترتها.
لتنفيذ خلية، اضغط على Shift+Enter. بالنسبة لخلية Markdown، سيطبق هذا أي تنسيق Markdown، أما بالنسبة لخلية التعليمات البرمجية، فسينفذ هذا التعليمات البرمجية ويعطيك النتيجة. إذا تم تنفيذ التعليمات البرمجية بنجاح، فسوف تعيد قيمة. يتم تمييز رسائل الخطأ باللون الأحمر.
لتغيير خلية بعد تنفيذها، انقر فوقها. اضغط على Shift+Enter مرة أخرى لإعادة تنفيذها.
لنكتب مثالاً بسيطًا لـ “Hello, world!” لتوضيح هذه المبادئ. يجب أن يكون لدينا خلية نصية تشرح ما يفعله هذا البرنامج. سننشئ خلية Markdown بشيء مثل “هذا دفتر ملاحظات يطبع “Hello, world!””
سننفذ ذلك ونحصل على خلية نصية.
الآن دعنا ندرج خلية تعليمات برمجية. انقر فوق الزر الموجود على علامة اليمين الذي يحتوي على مربع فوق علامة الجمع لإضافة خلية أسفل هذه الخلية.
يمكنك أيضًا الضغط على B كاختصار لوحة مفاتيح.
تأكد من ظهور “Code” في القائمة المنسدلة واكتب هذا في المربع:
print("Hello, world!")
ستلاحظ أنه في خلايا التعليمات البرمجية، يقوم Jupyter تلقائيًا بتسليط الضوء على بناء الجملة لمساعدتك على التأكد من إدخال التعليمات البرمجية بشكل صحيح.
اضغط على Shift+Enter مرة أخرى وسترى “Hello, world!” مطبوعة أسفل خلية التعليمات البرمجية. سيفعل الزر الموجود على يسار عملية “إدراج خلية أدناه” نفس الشيء ولكن بإدراج خلية أعلى الخلية الحالية.
يمكنك تحريك الخلايا. توجد بعض الرموز على يمين كل خلية. ستنقل الخلية لأعلى أو لأسفل أو تنشئ خلية جديدة أعلى أو أسفل الخلية الحالية أو تنسخ الخلية الحالية. الرمز الأخير مفيد إذا كنت تريد تشغيل نفس العملية ولكن بمعلمات مختلفة، مثل تغيير قيمة متغير.
سيقوم Jupyter بحفظ دفتر الملاحظات الخاص بك بشكل دوري. يمكنك النقر فوق “حفظ دفتر الملاحظات” في قائمة “ملف” أو الضغط على Ctrl+S.
لإنهاء دفتر الملاحظات، انقر فوق “إيقاف التشغيل” في قائمة الملفات. ستظهر لك نافذة تأكيد. لإيقاف تشغيل خادم Jupyter بالكامل، انقر فوق “إيقاف التشغيل” من قائمة اختيار الملفات أو اضغط على Ctrl+C في المحطة الطرفية التي بدأت تشغيل دفتر الملاحظات منها.
يجب أن يساعدك هذا في البدء في استكشاف طريقة جديدة وقوية للبرمجة باستخدام دفاتر Jupyter.