pip
ما هو pip؟
pip أداة حزم Python. الاسم مركب من كلمات pip installs packages. الحزم تقف في سجل PyPI. requirements.txt قائمة حزم المشروع. pip install -r يقرأ تلك القائمة. منذ Python 3.4 يأتي pip عادة مع Python. البيئة الافتراضية تجمع الحزم داخل المشروع كي لا تختلط نسخة مشروع آخر. الفرق عن Python هو هذا: Python يشغّل الملف وpip لا يشغّل أي برنامج بنفسه. الفرق عن Node.js هو هذا أيضاً: Node يشغّل JavaScript ولا يستخدم pip. حزمة Node تأتي بـ npm. pip لـ Python فقط.
فيمَ يُستخدم pip؟
pip لتثبيت مكتبة مرة وتكرار القائمة نفسها على حاسوب آخر.
- تثبيت مكتبة جاهزة في المشروع
- حفظ القائمة في requirements.txt
- فصل النسخة في بيئة افتراضية
- استبدال حزمة قديمة بأخرى أحدث
ماذا يمكن فعله باستخدام pip؟
بـ pip تنزّل حزمة وتثبّت من القائمة وتُظهر الاسم المثبّت. هو لا يكتب برنامج Python نفسه. كود الحزمة قد يبدأ بأمرك. تثبيت حزمة لا تعرفها يجلب ذلك الكود أيضاً.
هل تعلم pip صعب؟
تثبيت حزمة واحدة سهل. الصعوبة اختلاط النسخ. pip على الحاسوب قد ينظر إلى Python آخر. التثبيت باليد وحدها بلا كتابة القائمة لا يعطي النتيجة نفسها على جهاز آخر غداً. بلا بيئة افتراضية تقع الحزمة في المكان المشترك.
المزايا والحدود
الميزة: لا تُعاد كتابة المكتبة والقائمة تبقى في ملف واحد ويأتي جاهزاً مع Python. الحد: التثبيت في Python الخطأ يصنع خطأً صامتاً. ليس كل عمل صغير يحتاج حزمة. pip ليس Python نفسه.
أفكار أساسية
الحزمة كود جاهز. القائمة تقول ماذا يحتاج المشروع. البيئة المجلد المنفصل لتلك الحزم.
- pip install يثبّت حزمة واحدة
- requirements.txt يحفظ القائمة
- venv يفصل البيئة
- PyPI المكان المشترك للحزم
مثال قصير
هذا الأمر يثبّت الحزم في القائمة. إذا كانت القائمة فارغة لا ينزّل شيئاً.
pip install -r requirements.txt
أسئلة شائعة
- هل pip وPython الشيء نفسه؟ لا. Python يشغّل ملف .py. pip يجلب مكتبة ذلك الملف ولا يشغّل برنامجاً بنفسه.
- هل pip وNode.js الشيء نفسه؟ لا. Node يشغّل JavaScript ولا يستخدم pip. حزمة Node تأتي بـ npm. pip لـ Python فقط.
- هل requirements.txt هو الحزمة نفسها؟ لا. هو قائمة الأسماء.