English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

دليل أساسي لـ Python

تحكم العملية في Python

الوظائف لبايثون

أنواع البيانات لبايثون

عمليات تحكم الملفات في Python

أbjects و classes في Python

تاريخ وتوقيت Python

معرفة متقدمة في Python

كتيب مرجع Python

بيتاون بيب

في هذا الدليل، سنتعلم كيفية استخدام pip لتركيب وإدارة حزم Python.

ما هو pip؟

pip هو مدير الحزم القياسي لـ Python. يمكننا استخدام pip لتركيب الحزم الأخرى غير الموجودة في مكتبة Python القياسية. على سبيل المثال،

تثبيت pip install numpy

إذا تم تثبيت pip على النظام، فإن هذا الأمر سيقوم بتثبيت مكتبة numpy.

كيفية تثبيت pip؟

تم تثبيت pip مسبقًا في إصدارات بايثون 3.4 أو أقدم. يمكننا التحقق من تثبيت pip باستخدام الأمر التالي في لوحة التحكم بالأوامر:

pip --version

إذا كان pip موجودًا في النظام، فإن pip سيظهر الإصدار المطلوب، مثل:

pip 19.3.1 من C:\Python37\lib\site-packages\pip (بايثون 3.7)

إذا كنت تستخدم إصدار قديم من بايثون أو لم يتم تثبيت pip لأسباب أخرى، فلاحظ الخطوات المذكورة في هذا الرابط:تثبيت pip

استخدام pip

pip هو برنامج سطر أمر. بعد التثبيت، يتم إضافة pip كأمر يمكن استخدامه مع سطر الأوامر.

النحو الأساسي لـ pip هو:

pip <أوامر pip>

تثبيت البرامج باستخدام pip

إضافة إلى مكتبات بايثون القياسية، قام مجتمع بايثون بتصميم العديد من البرامج لتناسب مختلف إطارات التطوير، الأدوات والكتبات.

معظم هذه البرامج يتم استضافةها وانتشارها بشكل رسمي إلىالسجلات البرمجية لبايثون (PyPI)pip يسمح لنا بتحميل وتثبيت هذه البرامج.

تثبيت البرامج الأساسية

يستخدم أمر التثبيت لتثبيت البرامج عبر pip. دعنا نأخذ مثالًا:

افتراضًا نريد تثبيت requests، مكتبة HTTP الشائعة لتلبيس بايثون. يمكننا باستخدام أوامر التالية القيام بذلك.

تثبيت pip install requests

نتائج الخروج

جمع requests
  استخدام مخزن https://files.pythonhosted.org/packages/51/bd/23c926cd341ea6b7dd0b2a00aba99ae0f828be89d72b2190f27c11d4b7fb/requests-2.22.0-py2.py3-none-any.whl
جمع chardet<3.1.0,>=3.0.2
  استخدام مخزن https://files.pythonhosted.org/packages/bc/a9/01ffebfb562e4274b6487b4bb1ddec7ca55ec7510b22e4c51f14098443b8/chardet-3.0.4-py2.py3-none-any.whl
جمع urllib3!=1.25.0,!=1.25.1,<1.26,>=1.21.1
  استخدام المخزن المؤقت https://files.pythonhosted.org/packages/b4/40/a9837291310ee1ccc242ceb6ebfd9eb21539649f193a7c8c86ba15b98539/urllib3-1.25.7-py2.py3-none-any.whl
جمع idna<2.9,>=2.5
  استخدام المخزن المؤقت https://files.pythonhosted.org/packages/14/2c/cd551d81dbe15200be1cf41cd03869a46fe7226e7450af7a6545bfc474c9/idna-2.8-py2.py3-none-any.whl
جمع certifi>=2017.4.17
  تحميل https://files.pythonhosted.org/packages/b9/63/df50cac98ea0d5b006c55a399c3bf1db9da7b5a24de7890bc9cfd5dd9e99/certifi-2019.11.28-py2.py3-none-any.whl (156kB)
تثبيت الحزم المجموعة: chardet, urllib3, idna, certifi, requests
تم التثبيت بنجاح certifi-2019.11.28 chardet-3.0.4 idna-2.8 requests-2.22.0 urllib3-1.25.7

في هذا السياق، يمكننا رؤية أن الأمر install تم استخدامه مع pip، يتبعه اسم الحزمة التي نريد تثبيتها (requests).

يتم أيضًا تثبيت جميع التبعيات الأخرى المطلوبة للحزمة، مثل chardet،urllib3 وcertifi.

تحديد إصدار الحزمة

إذا تم استخدام pip install في شكل أقل، فإن pip سيقوم بتحميل أحدث إصدار من الحزمة.

في بعض الأحيان، يمكن التكامل مع البرامج الأخرى فقط عبر إصدارات معينة. لذلك، يمكننا تعريف إصدار حزمة البرنامج عبر الطريقة التالية:

piplinstalllrequests==2.21.0

في هذا السياق، قمنا بتثبيت إصدار 2.21.0 من مكتبة requests.

استخدام pip لقائمة الحزم المثبتة

يمكن استخدام الأمر pip list لقائمة جميع الحزم المتاحة في البيئة الحالية لـ Python.

pipllist

نتائج الخروج

الحزمة  إصدار
----------l----------
certifil2019.11.28
chardetl3.0.4
idnal2.8
pip 19.3.1
requestsl2.22.0
setuptools 45.0.0
urllib3l1.25.7
wheel 0.33.6

pip showlعرض معلومات الحزمة

يظهر الأمر pip show معلومات حول مكتبة واحدة أو أكثر من المكتبات المثبتة. لنرى مثالاً:

piplshowlrequests

نتائج الخروج

الاسم: requests
الإصدار: 2.22.0
ملخص: Python HTTP للبشر.
صفحةlm主页: http://python-requests.org
المطور: Kenneth Reitz
بريدlالمطور: [email protected]
الترخيص: Apache 2.0
الموقع: c:\users\dell\desktop\venv\lib\site-packages
Requires: certifi, chardet, urllib3, idna
Required-by:

في هذا السياق، يظهر الأمر show معلومات حول مكتبة requests. انتبه إلى ما يلي في الناتج المقدّم:RequiresوRequired-byقائمة.

قائمةlRequireslتظهر الاعتمادات التي تحتاجها مكتبة requests. وتبين قائمةlRequired-bylالمكتبات التي تحتاج إلى requests.

إزالة البرامج عبر pip

يمكننا إزالة حزمة pip باستخدام الأمر pip uninstall.

لنفترض أننا نريد إزالة مكتبة requests من البيئة الحالية لـ Python. يمكننا القيام بذلك عبر الطريقة التالية:

pipluninstalllrequests

نتائج الخروج

إزالةlrequests-2.22.0:
  سيتم
eزالة
    C:\Python37\lib\site-packages\requests-2.22.0.dist-info\*
    C:\Python37\lib\site-packages\requests\*
تابع (y/n)? y
  تم إزالة التثبيت بنجاح requests-2.22.0

كما رأينا، تم حذف حزمة requests بعد الإشارة النهائية.

ملاحظةملاحظة: حتى لو تم حذف الحزمة المحددة، فإن الحزم التي تم تثبيتها كإعتمادات لن يتم حذفها. في هذه الحالة، لن يتم إزالة إعتمادات مكتبة requests (chardet،urllib3 و certifi).

إذا كنت بحاجة إلى حذف إعتمادات الحزم أيضًا، يمكنك استخدام أمر pip show لعرض الحزم المثبتة وحذفها يدويًا.

استخدام ملف الطلب

يمكن أيضًا استخدام ملف يحتوي على أسماء جميع الحزم لتركيب الحزم البرمجية لـ Python بشكل جماعي.

دعنا نرى مثالًا:

افترض أن لدينا ملفًاrequirements.txt،ويشمل التالي:

numpy
Pillow
pygame

يمكننا استخدام أمرٍ واحدٍ لتركيب جميع هذه الحزم وإعتماداتها باستخدام pip.

pip install -r requirements.txt

نتائج الخروج

جمع numpy
  استخدام مخزن https://files.pythonhosted.org/packages/a9/38/f6d6d8635d496d6b4ed5d8ca4b9f193d0edc59999c3a63779cbc38aa650f/numpy-1.18.1-cp37-cp37m-win_amd64.whl
جمع Pillow
  استخدام مخزن https://files.pythonhosted.org/packages/88/6b/66f502b5ea615f69433ae1e23ec786b2cdadbe41a5cfb1e1fabb4f9c6ce9/Pillow-7.0.0-cp37-cp37m-win_amd64.whl
جمع pygame
  استخدام مخزن https://files.pythonhosted.org/packages/ed/56/b63ab3724acff69f4080e54c4bc5f55d1fbdeeb19b92b70acf45e88a5908/pygame-1.9.6-cp37-cp37m-win_amd64.whl
تثبيت الحزم المجموعة: numpy, Pillow, pygame
تم التثبيت بنجاح Pillow-7.0.0 numpy-1.18.1 pygame-1.9.6

في هذا السياق، نستخدم الأمر install نفسه مع pip.

لكن، يحدد المعامل الإضافي -r أننا نمرر ملف المتطلبات وليس اسم الحزمة.

إنشاء ملف متطلبات

كالبديل عن إنشاء ملف متطلبات يدويًا، يقدم pip الأمر freeze. لنرى كيفية استخدامه.

افترض أن بيئة Python الحالية لديها الحزم التالية. يمكن عرضها باستخدام pip list.

الحزمة  إصدار
----------  -------
numpy 1.17.0
Pillow 6.1.0
pip 19.3.1
pygame 1.9.6
setuptools 45.0.0
wheel 0.33.6

يستخدم الأمر freeze لقائمة الحزم التي لم يتم تثبيتها مسبقًا في Python.

pip freeze

نتائج الخروج

numpy==1.17.0
Pillow==6.1.0
pygame==1.9.6

يظهر الأمر pip freeze الحزم وأصدارها في شكل ملف متطلبات.

لذلك، يمكن استخدام الأمر التالي لإعادة توجيه الخروج لإنشاء ملف متطلبات:

pip freeze > requirements.txt

إنشاء ملف جديد في الدليل الحاليrequirements.txtملف. يمكن استخدامها في بيئات Python الأخرى لتركيب إصدار معين من الحزمة.

يستخدم الأمر search للبحث عن الحزم في سطر الأوامر. لنرى مثالاً:

pip search pygame

نتائج الخروج

pygame-anisprite (1.0.0) - رسوم متحركة للرموز لـ PyGame!
pygame-ai (0.1.2) - مكتبة ذكاء الاصطناعي للعبة الفيديو لـ PyGame
pygame-engine (0.0.6) - محرك لعبة بايثون بسيط
pygame-assets (0.1) - مدير الأصول لبكجات Pygame
pygame-gui (0.4.2) - وحدة واجهة المستخدم لبايثون 2
pygame-spritesheet (0.2.0) - امتداد بايثون pygame يقدم فئة SpriteSheet
pygame-minesweeper (1.0) - لعبة Minesweeper تم تنفيذها باستخدام بايثون باستخدام pygame
pygame-menu (2.1.0) - قائمة لبايثون، بسيطة، خفيفة الوزن وسهلة الاستخدام
pygame-plot (0.1) - عرض بسرعة للبيانات باستخدام pygame بنمط matplotlib
pygame (1.9.6) - تطوير الألعاب لبايثون
...

في هذا المكان، قمنا بالبحث عن مكتبة تدعى pygame. عرضت جميع الحزم الأخرى التي تتطابق مع الكلمات المفتاحية. هذه الأوامر تساعد في العثور على الحزم ذات الصلة.

للإطلاع على معلومات أكثر حول بيب، يرجى زيارة:بيتاون بيب (مستندات رسمية)