امیرحسین صفرزاده
امیرحسین صفرزاده
خواندن ۳ دقیقه·۳ سال پیش

هرچه باید درباره pip و پکیج ها در پایتون بدونید، به زبان ساده

پیپ!
پیپ!


سلام سلام!

بدون فوت وقت شروع کنم، pip یه دره به دنیای جدیدی از پایتون که هر فرد مبتدی ای بعد از اینکه پایتون کنسول( توابع ساده مثل print و for و whileو همینطور جمع و تفریق و متغیر ها) رو یاد گرفت و گفت این پایتون که هیچی نبود، یهو با دیدنش صاحب یک دهان به اندازه غار علیصدر میشه!

اول ببینیم پیپ چیه...


پیپ چیه؟

تعریف ویکی پدیایی پیپ میشه: «نصب‌کننده بسته پایتون (به انگلیسی: Python Installs Packages) (مخفف انگلیسی: pip) یک سامانه مدیریت بسته است که به زبان پایتون نوشته شده و برای نصب و مدیریت بسته‌های نرم‌افزاری مورد استفاده قرار می‌گیرد.[۵] این برنامه به یک مخزن آنلاین بسته‌های عمومی متصل می‌شود که فهرست بسته پایتون (PyPI) نامیده می‌شود. پیپ همچنین می‌تواند پیکربندی شود تا به مخازن بسته‌های دیگر (محلی یا از راه دور) متصل شود، مشروط بر اینکه آنها با پیشنهاد توسعه پایتون ۵۰۳ مطابقت داشته باشند.[۶][۷]

اگر پایتون ۲ دارید، نسخه ۲٫۷٫۹ و بالاتر و اگر پایتون ۳ دارید، نسخه ۳٫۴ و بالاتر پیپ را به‌طور خودکار دارند.[۸]»

که صدالبته ما کاری باهاش نداریم!

به تعریف خودمون میشه: یه بنده خدایی که برمیداره یه سری تیکه کد و پکیج رو، یعنی یه سری فایل های پایتونی که قبلا نوشته شدن رو برای شما نصب میکنه تا بتونید تو کد هاتون ازش استفاده کنید و لازم نباشه بنویسیدشون!

برای اینکه راحت تر متوجه بشین، اول باید پکیج ها رو بشناسید:

مثلا ما میخوایم مساحت یه دایره رو حساب کنیم برا حسب شعاعش. تقریبا همه میدونن که میشه پی آر2

یعنی r x r x 3.14

و هربار باید بنویسیم مثلا:

masahat = shoaa*shoaa*3.14

حالا فکر کنید میخوایم چندین بار تو برنامه ازش استفاده کنیم.

برای این کار تبدیل به یه تابعش میکنیم:

def masaht(shoaa):

return (shoaa*shoaa*3.14)

حالا فرض کنید قضیه پیچیده تر از این حرفاس! مثلا میخوایم برای مساحت هر شکلی یه تابع بنویسیم!

اونوقت باید یا دونه دونه توابع رو مینوشتید، یا باید میرفتید از اینترنت دانلود میکردین و میوردین تو کدتون که مثلا 1000 خط اولش میرفت به این توابع چرت و پرت!

خوب راه حل چیه؟

پایتون یه قابلیتی داره که میتونید یه کد رو یبار بنویسید، بعد ایمپورت اش کنید

مثلا یه تابعی داریم بنام time که پیشفرض روی تمام پایتون 3 ها هست،

که مثلا برای اینکه برنامه 5 ثانیه صبر کنه و بعد یه کاری رو انجام بده مینویسید:

import time

time.sleep(5)

print("....")

یا اگه بخواین فقط تابع sleep رو از پکیج time ایمپورت کنید، مینویسید:

from time import sleep

sleep(5)

print("....")

به همین سادگی!

خوب حالا یه سوال پیش میاد، من این پکیج ها رو از کجا پیدا کنم؟ یعنی باید فایل هاش رو دانلود کنم و کپی کنم داخل فولدر lib پایتونم؟ دونه دونه؟ اونایی که بیشتر از 100 فایل و فولدر تو در تو ان چی؟

خوب، اینجاس که پیپ میپره وسط!

پیپ، فراتر از مرزها!

پیپ عزیز زحمت دانلود و نصب پکیج هارو میکشه. فقط کافیه اسم پکیج رو بدونید!

حالا برای استفاده ازش، بعد از نصب پایتون باید cmd رو باز کنید و توش بنویسید:

py -m pip install HAVIJ

که بجای هویج اسم پکیج رو میذارید

مثلا یکی از پرکاربرد ترین پکیج ها که requests هست و با بعضی پایتون ها خودش نصب میشه و با بعضی نه، رو میشه با این دستور نصب کرد:

py -m pip install requests

که خودبخود دانلود و نصبش میکنه و میتونید با دستور import requests خیلی راحت ازش استفاده کنید!

حالا پکیج ها رو از کجا بشناسیم و دانلود کنیم؟

اولین راه اینه که موضوعی که میخواید رو توی GitHub سرچ کنید، و پروژه های مربوط به اون تو زبان پایتون رو ببینید. اگه چیزی مورد پسندتون بود چک کنید که داخل Pypi ثبت شده یانه. معمولا توی صفحه گیت هاب پروژه ها کامند نصبشون(مثل همون کامندی که برای requests زدیم) نوشته شده و میتونید ازش استفاده کنید.

نکته: برای بعضی سیستم ها کلمه py کار نمیکنه و بجاش باید از python استفاده کنید،

یعنی python -m pip install HAVIJ


همین دیگه، اگرم خطا داد تشریف ببرید خطا رو سرچ کنید و حلش کنید!

پایتونpippackage
یک فروند برنامه نویس، شاعر، عکاس و گرافیست مملکت! خلاصه که تو هر حوزه ای یه سرکی کشیدیم
شاید از این پست‌ها خوشتان بیاید