مدیر بسته بندی استاندارد برای پایتون پیپ است. این امکان را به شما می دهد تا بسته هایی را که جزئی از کتابخانه استاندارد پایتون نیستند ، نصب و مدیریت کنید. اگر به دنبال مقدمه ای برای PIP هستید ، به جای مناسب آمده اید!
در این آموزش ، شما می آموزید که چگونه:
- PIP را در محیط کار خود تنظیم کنید
- خطاهای رایج مربوط به کار با PIP را برطرف کنید
- بسته های PIP را نصب و حذف نصب کنید
- وابستگی پروژه ها را با استفاده از پرونده های مورد نیاز مدیریت کنید
شما می توانید کارهای زیادی با PIP انجام دهید ، اما جامعه پایتون بسیار فعال است و گزینه های شسته و رفته ای برای PIP ایجاد کرده است. بعداً در این آموزش در مورد مواردی خواهید آموخت.
جایزه رایگان: 5 فکر در مورد تسلط پایتون ، یک دوره رایگان برای توسعه دهندگان پایتون که نقشه راه و طرز فکر شما را نشان می دهد که باید مهارت های پایتون خود را به سطح بعدی برسانید.
شروع با پیپ
بنابراین ، PIP دقیقاً چه کاری انجام می دهد؟PIP مدیر بسته برای پایتون است. این بدان معناست که این ابزاری است که به شما امکان می دهد کتابخانه ها و وابستگی هایی را که به عنوان بخشی از کتابخانه استاندارد توزیع نمی شوند ، نصب و مدیریت کنید. نام PIP توسط Ian Bicking در سال 2008 معرفی شد:
من تغییر نام Pyinstall به نام جدید آن را به پایان رسانده ام: PIP. نام PIP [AN] مخفف و اعلامیه است: PIP بسته ها را نصب می کند.(منبع)
مدیریت بسته به حدی مهم است که نصب کننده های پایتون از زمان نسخه های 3. 4 و 2. 7. 9 به ترتیب برای Python 3 و Python 2 به ترتیب PIP را شامل می شوند. بسیاری از پروژه های پایتون از PIP استفاده می کنند ، که آن را به ابزاری اساسی برای هر پایتونیستا تبدیل می کند.
اگر از یک زبان برنامه نویسی دیگر آمده باشید ، مفهوم یک مدیر بسته ممکن است برای شما آشنا باشد. JavaScript از NPM برای مدیریت بسته استفاده می کند ، روبی از گوهر استفاده می کند و . NET Platform از NUGET استفاده می کند. در پایتون ، پیپ به مدیر بسته بندی استاندارد تبدیل شده است.
یافتن پیپ بر روی سیستم خود
نصب Python 3 به شما امکان نصب PIP را هنگام نصب Python بر روی سیستم خود می دهد. در حقیقت ، گزینه نصب PIP با Python به طور پیش فرض بررسی می شود ، بنابراین PIP باید پس از نصب پایتون برای استفاده شما آماده باشد.
توجه: در برخی از سیستم های Linux (UNIX) مانند Ubuntu ، PIP در یک بسته جداگانه به نام Python3-PIP قرار می گیرد که باید با Sudo Apt نصب Python3-PIP نصب کنید. به طور پیش فرض با مترجم نصب نشده است.
می توانید با جستجوی اجرایی PIP3 در سیستم خود ، PIP را در دسترس قرار دهید. سیستم عامل خود را در زیر انتخاب کنید و بر این اساس از دستور خاص پلتفرم خود استفاده کنید:
فرمان Where در ویندوز به شما نشان می دهد که در کجا می توانید اجرایی PIP3 را پیدا کنید. اگر ویندوز نتواند یک اجرایی به نام PIP3 پیدا کند ، می توانید در پایان به دنبال PIP بدون سه (3) باشید.
فرمان در سیستم های لینوکس و MACOS به شما نشان می دهد که پرونده باینری PIP3 در کجا قرار دارد.
در سیستم های ویندوز و یونیکس ، PIP3 ممکن است در بیش از یک مکان یافت شود. این ممکن است هنگامی اتفاق بیفتد که چندین نسخه پایتون نصب شده باشید. اگر نمی توانید PIP را در هر مکانی در سیستم خود پیدا کنید ، ممکن است دوباره نصب PIP را در نظر بگیرید.
به جای اجرای مستقیم PIP سیستم خود ، می توانید آن را به عنوان یک ماژول پایتون نیز اجرا کنید. در بخش بعدی ، شما می آموزید که چگونه.
در حال اجرا پیپ به عنوان یک ماژول
هنگامی که سیستم خود را مستقیماً اجرا می کنید ، خود فرمان فاش نمی کند که نسخه Python PIP متعلق به آن است. این متأسفانه بدان معنی است که شما می توانید از PIP برای نصب یک بسته در بسته های سایت یک نسخه قدیمی پایتون بدون توجه استفاده کنید. برای جلوگیری از وقوع این امر ، می توانید پیپ را به عنوان یک ماژول پایتون اجرا کنید:
توجه کنید که برای اجرای PIP از Python 3-M استفاده می کنید. سوئی چ-m به Python می گوید که یک ماژول را به عنوان اجرایی مترجم Python3 اجرا کند. به این ترتیب ، می توانید اطمینان حاصل کنید که نسخه Python 3 Default System شما دستور PIP را اجرا می کند. اگر می خواهید در مورد این روش اجرای PIP اطلاعات بیشتری کسب کنید ، می توانید مقاله روشنگری برت کان را در مورد مزایای استفاده از Python 3-M PIP بخوانید.
بعضی اوقات ممکن است بخواهید صریح تر باشید و بسته ها را به یک پروژه خاص محدود کنید. در شرایطی مانند این ، شما باید PIP را در یک محیط مجازی اجرا کنید.
استفاده از PIP در یک محیط مجازی پایتون
برای جلوگیری از نصب بسته ها به طور مستقیم در نصب پایتون سیستم ، می توانید از یک محیط مجازی استفاده کنید. یک محیط مجازی یک مترجم جدا شده پایتون را برای پروژه شما فراهم می کند. هر بسته ای که در داخل این محیط استفاده می کنید مستقل از مفسر سیستم شما خواهد بود. این بدان معنی است که شما می توانید وابستگی های پروژه خود را از سایر پروژه ها و سیستم به طور گسترده جدا کنید.
استفاده از PIP در داخل یک محیط مجازی سه مزیت اصلی دارد. تو می توانی:
- مطمئن باشید که از نسخه Python مناسب برای پروژه مورد نظر استفاده می کنید
- اطمینان داشته باشید که هنگام اجرای PIP یا PIP3 به نمونه PIP صحیح مراجعه می کنید
- بدون تأثیرگذاری بر پروژه های دیگر ، از یک نسخه بسته خاص برای پروژه خود استفاده کنید
Python 3 برای ایجاد محیط های مجازی دارای ماژول داخلی VENV است. این ماژول به شما کمک می کند تا محیط های مجازی با نصب پایتون جدا شده ایجاد کنید. پس از فعال کردن محیط مجازی ، می توانید بسته ها را در این محیط نصب کنید. بسته هایی که در یک محیط مجازی نصب می کنید از تمام محیط های دیگر روی سیستم شما جدا شده است.
شما می توانید این مراحل را برای ایجاد یک محیط مجازی دنبال کنید و تأیید کنید که از ماژول PIP در داخل محیط تازه ایجاد شده استفاده می کنید:
در اینجا شما با استفاده از ماژول داخلی VenV Python ، یک محیط مجازی به نام VenV ایجاد می کنید. سپس آن را با دستور منبع فعال می کنید. پرانتز (()) اطراف نام Venv شما نشان می دهد که شما با موفقیت محیط مجازی را فعال کرده اید.
در آخر ، نسخه اجرایی PIP3 و PIP را در محیط مجازی فعال خود بررسی می کنید. هر دو به ماژول PIP یکسان اشاره دارند ، بنابراین پس از فعال شدن محیط مجازی شما ، می توانید از PIP یا PIP3 استفاده کنید.
نصب مجدد PIP هنگام بروز خطاها
هنگام اجرای دستور PIP ، ممکن است در بعضی موارد خطایی داشته باشید. پیام خطای خاص شما به سیستم عامل شما بستگی دارد:
| سیستم عامل | پیغام خطا |
| پنجره ها | "PIP" به عنوان یک دستور داخلی یا خارجی ، برنامه قابل اجرا یا پرونده دسته ای شناخته نمی شود. |
| لینوکس | BASH: PIP: فرمان یافت نشد |
| سیستم عامل مک | ZSH: فرمان یافت نشد: PIP |
پیام های خطا از این دست نشان می دهد که با نصب PIP مشکلی پیش آمده است.
توجه: قبل از شروع هرگونه عیب یابی هنگامی که دستور PIP کار نمی کند ، می توانید در پایان از دستور PIP3 با سه (3) استفاده کنید.
دریافت خطایی مانند مواردی که در بالا نشان داده شده است می تواند ناامید کننده باشد زیرا PIP برای نصب و مدیریت بسته های خارجی بسیار مهم است. برخی از مشکلات متداول PIP مربوط به نحوه نصب این ابزار بر روی سیستم شما است.
اگرچه پیام های خطا برای سیستم های مختلف متفاوت است ، همه آنها به یک مشکل یکسان اشاره می کنند: سیستم شما نمی تواند PIP را در مکان های ذکر شده در متغیر مسیر شما پیدا کند. در ویندوز ، مسیر بخشی از متغیرهای سیستم است. در MacOS و Linux ، PATH بخشی از متغیرهای محیط است. می توانید محتوای متغیر مسیر خود را با این دستور بررسی کنید:
خروجی این دستور لیستی از مکان ها (دایرکتوری ها) را در دیسک شما نشان می دهد که سیستم عامل به دنبال برنامه های اجرایی است. بسته به سیستم شما ، مکانها را می توان با یک روده بزرگ از هم جدا کرد (:) یا یک قسمت اصلی (؛).
به طور پیش فرض ، دایرکتوری که شامل PIP اجرایی است باید پس از نصب پایتون یا ایجاد یک محیط مجازی در مسیر باشد. با این حال ، مفقود PIP یک مسئله مشترک است. دو روش پشتیبانی شده می توانند به شما در نصب مجدد پیپ کمک کرده و آن را به مسیر خود اضافه کنند:
- ماژول یدکی PIP
- اسکریپت get-pip. py
ماژول Versippip از زمان پایتون 3. 4 بخشی از کتابخانه استاندارد بوده است. اضافه شد تا یک روش ساده برای شما فراهم شود تا بتوانید پیپ را دوباره نصب کنید اگر به عنوان مثال ، هنگام نصب پایتون آن را رد کنید یا در مقطعی PIP را حذف کردید. سیستم عامل خود را در زیر انتخاب کنید و بر این اساس Verspip را اجرا کنید:
اگر پیپ هنوز نصب نشده است ، این دستور آن را در محیط فعلی پایتون شما نصب می کند. اگر در یک محیط مجازی فعال هستید ، این فرمان PIP را در آن محیط نصب می کند. در غیر این صورت ، PIP را در سطح جهانی روی سیستم شما نصب می کند. گزین ه-به روزرسانی تضمین می کند که نسخه PIP همان نسخه اعلام شده در VersePIP است.
توجه: ماژول Verspip به اینترنت دسترسی ندارد. آخرین نسخه PIP که می تواند PIP را نصب کند ، نسخه ای است که در نصب پایتون محیط شما همراه است. به عنوان مثال ، اجرای PIP با Python 3. 10. 0 PIP 21. 2. 3 را نصب می کند. اگر نسخه PIP جدیدتر را می خواهید ، باید ابتدا Versippip را اجرا کنید. پس از آن ، می توانید PIP را به صورت دستی به آخرین نسخه آن به روز کنید.
راه دیگر برای رفع نصب PIP شما استفاده از اسکریپت get-pip. py است. پرونده get-pip. py حاوی یک کپی کامل از PIP به عنوان یک فایل ZIP رمزگذاری شده است. شما می توانید Get-pip. py را مستقیماً از صفحه bootstrap pypa بارگیری کنید. هنگامی که اسکریپت را روی دستگاه خود دارید ، پس از آن اسکریپت Python را مانند این اجرا می کنید:
این اسکریپت آخرین نسخه PIP ، Setuptools و چرخ را در محیط فعلی Python شما نصب می کند. اگر فقط می خواهید پیپ را نصب کنید ، می توانید گزینه های-no-setuptools و-no-wheel را به دستور خود اضافه کنید.
اگر هیچ یک از روشهای فوق کار نمی شود ، ممکن است ارزش تلاش برای بارگیری آخرین نسخه Python را برای پلت فرم فعلی خود داشته باشید. می توانید راهنمای نصب و راه اندازی Python 3 را دنبال کنید تا مطمئن شوید PIP به طور مناسب نصب شده و بدون خطا کار می کند.
نصب بسته ها با PIP
پایتون یک باتری شامل زبان محسوب می شود. این بدان معنی است که کتابخانه استاندارد پایتون شامل مجموعه گسترده ای از بسته ها و ماژول ها برای کمک به توسعه دهندگان در پروژه های برنامه نویسی خود است.
در عین حال ، پایتون یک جامعه فعال دارد که مجموعه ای از بسته های حتی گسترده تری را نیز در اختیار شما قرار می دهد که می تواند به شما در نیازهای توسعه کمک کند. این بسته ها به شاخص بسته Python ، که به عنوان PYPI نیز شناخته می شود ، منتشر می شود.
PYPI میزبان مجموعه گسترده ای از بسته ها ، از جمله چارچوب های توسعه ، ابزار و کتابخانه ها است. بسیاری از این بسته ها رابط های دوستانه با عملکرد کتابخانه استاندارد پایتون ارائه می دهند.
با استفاده از شاخص بسته Python (PYPI)
یکی از بسته های بسیاری که میزبان PYPI است ، درخواست ها نامیده می شود. کتابخانه درخواست ها به شما کمک می کند تا با انتزاع پیچیدگی های درخواست های HTTP با خدمات وب ارتباط برقرار کنید. می توانید همه چیز را در مورد درخواست های موجود در سایت اسناد رسمی آن بیاموزید.
هنگامی که می خواهید از بسته درخواست ها در پروژه خود استفاده کنید ، ابتدا باید آن را در محیط خود نصب کنید. اگر نمی خواهید آن را در بسته های سایت Python System خود نصب کنید ، همانطور که در بالا نشان داده شده می توانید ابتدا یک محیط مجازی ایجاد کنید.
پس از ایجاد محیط مجازی و فعال کردن آن ، فوریت خط فرمان شما نام محیط مجازی را در داخل پرانتز نشان می دهد. هر دستورات PIP که از این پس انجام می دهید در محیط مجازی شما اتفاق می افتد.
برای نصب بسته ها ، PIP یک دستور نصب را ارائه می دهد. می توانید آن را برای نصب بسته درخواست ها اجرا کنید:
در این مثال ، PIP را با دستور نصب اجرا می کنید و به دنبال آن نام بسته ای که می خواهید نصب کنید. دستور PIP به دنبال بسته بندی در PYPI است ، وابستگی های آن را برطرف می کند و همه چیز را در محیط فعلی پایتون شما نصب می کند تا اطمینان حاصل شود که درخواست ها کار می کنند.
دستور نصب PIP همیشه به دنبال آخرین نسخه از بسته است و آن را نصب می کند. همچنین به وابستگی های ذکر شده در ابرداده بسته جستجو می کند و آنها را نصب می کند تا اطمینان حاصل شود که این بسته تمام شرایط مورد نیاز خود را دارد.
همچنین می توان چندین بسته را در یک دستور واحد نصب کرد:
با زنجیر کردن بسته های RPTREE و CODETIMING در دستور نصب PIP ، هر دو بسته را به طور همزمان نصب می کنید. شما می توانید به همان اندازه بسته ها را که می خواهید به دستور نصب PIP اضافه کنید. در مواردی مانند این ، یک پرونده مورد نیاز. txt می تواند مفید باشد. بعداً در این آموزش ، شما می آموزید که چگونه از یک فایل مورد نیاز استفاده کنید. برای نصب بسیاری از بسته ها به طور همزمان.
توجه: مگر اینکه شماره نسخه خاص یک بسته مربوط به این آموزش باشد ، متوجه خواهید شد که رشته نسخه شکل عمومی X. Y. Z را می گیرد. این یک قالب نگهدارنده مکان است و می تواند برای 3. 1. 4 ، 2. 9 یا هر شماره نسخه دیگر باشد. هنگامی که دنبال می کنید ، خروجی در ترمینال شما شماره نسخه های بسته واقعی شما را نمایش می دهد.
می توانید از دستور لیست برای نمایش بسته های نصب شده در محیط خود ، به همراه شماره نسخه های آنها استفاده کنید:
دستور PIP List یک جدول را ارائه می دهد که تمام بسته های نصب شده را در محیط فعلی شما نشان می دهد. خروجی بالا نسخه بسته ها را با استفاده از فرمت مکان نگهدارنده X. Y. Z نشان می دهد. هنگامی که دستور PIP List را در محیط خود اجرا می کنید ، PIP شماره نسخه خاصی را که برای هر بسته نصب کرده اید نشان می دهد.
برای کسب اطلاعات بیشتر در مورد یک بسته خاص ، می توانید با استفاده از دستور نمایش در PIP به ابرداده بسته نگاه کنید:
خروجی این دستور در سیستم شما ، ابرداده بسته را لیست می کند. خطوط نیاز به لیست بسته هایی مانند Certifi ، Idna ، Charset-Normalizer و Urllib3 لیست می کند. اینها نصب شده اند زیرا درخواست ها به آنها بستگی دارد که به درستی کار کنند.
اکنون که درخواست ها و وابستگی های آن را نصب کرده اید ، می توانید آن را دقیقاً مانند هر بسته معمولی دیگر در کد پایتون خود وارد کنید. مترجم تعاملی پایتون را شروع کنید و بسته درخواست ها را وارد کنید:
پس از شروع مترجم تعاملی پایتون ، ماژول درخواست ها را وارد کردید. با فراخوانی درخواست ها . __ نسخه __ ، تأیید کردید که از ماژول درخواست ها در محیط مجازی خود استفاده می کنید.
با استفاده از یک فهرست بسته بندی سفارشی
به طور پیش فرض ، PIP از PYPI برای جستجوی بسته ها استفاده می کند. اما PIP همچنین به شما امکان تعریف شاخص بسته بندی سفارشی را می دهد.
استفاده از PIP با یک شاخص سفارشی می تواند مفید باشد که دامنه PYPI در شبکه شما مسدود شود یا اگر می خواهید با بسته هایی که در دسترس عموم نیستند کار کنید. بعضی اوقات مدیران سیستم همچنین شاخص بسته داخلی خود را برای کنترل بهتر نسخه های بسته بندی در اختیار کاربران PIP در شبکه شرکت ایجاد می کنند.
یک فهرست بسته بندی سفارشی باید با PEP 503 - API مخزن ساده برای کار با PIP مطابقت داشته باشد. شما می توانید با مراجعه به شاخص ساده PYPI ، چنین تصور کنید که چنین API (رابط برنامه نویسی برنامه) به نظر می رسد-اما توجه داشته باشید که این یک صفحه بزرگ با محتوای سخت و سخت است. هر شاخص سفارشی که از همان API پیروی می کند ، می تواند با گزینه-Index-URL هدف قرار گیرد. به جای تایپ کرد ن-Inde x-URL ، می توانید ا ز-i Shorthand نیز استفاده کنید.
به عنوان مثال ، برای نصب ابزار RPTREE از شاخص بسته TestPypi ، می توانید دستور زیر را اجرا کنید:
با استفاده از گزین ه-i ، به پیپ می گویید که به جای PYPI ، به عنوان پیش فرض ، به شاخص بسته دیگری نگاه کنید. در اینجا ، شما RPTREE را از TestPypi به جای PYPI نصب می کنید. شما می توانید از TestPypi برای تنظیم دقیق فرآیند انتشار برای بسته های پایتون خود استفاده کنید بدون اینکه به هم ریخته باشد ، شاخص بسته بندی تولید را در PYPI قرار دهید.
اگر نیاز به استفاده دائمی از یک شاخص جایگزین دارید ، می توانید گزینه index-url را در پرونده پیکربندی PIP تنظیم کنید. این پرونده pip.conf نامیده می شود ، و می توانید با اجرای دستور زیر ، مکان آن را پیدا کنید:
با دستور PIP Config List ، می توانید پیکربندی فعال را لیست کنید. این دستور فقط وقتی تنظیمات سفارشی را تنظیم می کنید ، چیزی را خروجی می کند. در غیر این صورت ، خروجی خالی است. این زمانی است که گزینه افزودن ی-verbose ی ا-vv می تواند مفید باشد. هنگامی که شم ا-vv را اضافه می کنید ، پیپ به شما نشان می دهد که به دنبال سطح پیکربندی های مختلف است.
اگر می خواهید یک فایل pip.conf اضافه کنید ، می توانید یکی از مکانهایی را که لیست پیکربندی PI P-VV ذکر شده است انتخاب کنید. یک فایل pip.conf با شاخص بسته بندی سفارشی به این شکل است:
هنگامی که شما یک پرونده pip.conf مانند این دارید ، PIP از index-url تعریف شده برای جستجوی بسته ها استفاده می کند. با استفاده از این پیکربندی ، نیازی به استفاده از گزینه-Index-URL در دستور نصب PIP خود نیست تا مشخص کنید که فقط بسته هایی را می خواهید که در API ساده TestPypi پیدا کنید.
نصب بسته ها از مخازن GitHub خود
شما محدود به بسته های میزبانی شده در PYPI یا سایر شاخص های بسته بندی نیستید. PIP همچنین گزینه نصب بسته ها از مخزن GitHub را فراهم می کند. اما حتی هنگامی که یک بسته در PYPI میزبانی شده است ، مانند ژنراتور واقعی درخت دایرکتوری پایتون ، می توانید آن را از مخزن GIT خود نصب کنید:
با طرح GIT+HTTPS ، می توانید به یک مخزن GIT اشاره کنید که حاوی یک بسته قابل نصب است. می توانید تأیید کنید که بسته را با اجرای یک مترجم تعاملی پایتون و وارد کردن RPTREE به درستی نصب کرده اید:
پس از شروع مترجم تعاملی پایتون ، ماژول RPTREE را وارد می کنید. با تماس با RPTREE . __ نسخه __ ، شما تأیید می کنید که از ماژول RPTREE که در محیط مجازی خود مستقر است استفاده می کنید.
توجه: اگر از سیستم کنترل نسخه (VCS) به غیر از GIT استفاده می کنید ، پیپ را تحت پوشش خود قرار داده است. برای یادگیری نحوه استفاده از PIP با Mercurial ، Subversion یا Bazaar ، فصل پشتیبانی VCS مستندات PIP را بررسی کنید.
نصب بسته ها از یک مخزن GIT می تواند مفید باشد اگر بسته در PYPI میزبانی نشده باشد اما دارای یک مخزن از راه دور GIT باشد. مخزن از راه دور که به آن اشاره می کنید ، حتی می توانید در یک سرور داخلی GIT در اینترانت شرکت خود میزبانی کنید. این می تواند زمانی مفید باشد که در پشت فایروال باشید یا محدودیت های دیگری برای پروژه های پایتون خود داشته باشید.
نصب بسته ها در حالت قابل ویرایش برای سهولت در توسعه
هنگام کار روی بسته خود ، نصب آن در یک حالت قابل ویرایش می تواند معنی داشته باشد. با این کار ، می توانید در حالی که هنوز از خط فرمان خود مانند هر بسته دیگری استفاده می کنید ، روی کد منبع کار کنید. یک گردش کار معمولی این است که ابتدا مخزن را کلون کرده و سپس از PIP برای نصب آن به عنوان یک بسته قابل ویرایش در محیط خود استفاده کنید:
با دستورات بالا ، بسته RPTREE را به عنوان یک ماژول قابل ویرایش نصب کردید. در اینجا یک مرحله به مرحله از اقداماتی که اخیراً انجام داده اید آورده شده است:
- خط 1 مخزن GIT بسته RPTREE را کلون کرد.
- خط 2 فهرست کار را به rptree/ تغییر داد.
- خطوط 3 و 4 یک محیط مجازی ایجاد و فعال شده است.
- خط 5 محتوای فهرست فعلی را به عنوان یک بسته قابل ویرایش نصب کرد.
گزین ه-e برای گزین ه-قابل استفاده است. هنگامی که از گزین ه-e با نصب PIP استفاده می کنید ، به پیپ می گویید که می خواهید بسته را در حالت قابل ویرایش نصب کنید. به جای استفاده از یک نام بسته ، از یک نقطه () استفاده می کنید تا PIP را به فهرست فعلی منتقل کنید.
اگر از پرچ م-e استفاده نکرده اید ، PIP این بسته را به طور معمول در پوشه/ پوشه سایت محیط شما نصب می کند. هنگامی که یک بسته را در حالت قابل ویرایش نصب می کنید ، در بسته های سایت به مسیر پروژه محلی پیوندی ایجاد می کنید:
استفاده از دستور نصب PIP با پرچ م-e فقط یکی از گزینه های بسیاری است که PIP نصب می کند. می توانید نمونه های نصب PIP را در مستندات PIP بررسی کنید. در آنجا یاد خواهید گرفت که چگونه نسخه های خاص یک بسته یا Point PIP را به یک فهرست متفاوت که PYPI نیست نصب کنید.
در بخش بعدی ، شما می آموزید که چگونه پرونده های مورد نیاز می توانند به گردش کار PIP شما کمک کنند.
با استفاده از پرونده های مورد نیاز
دستور نصب PIP همیشه آخرین نسخه منتشر شده یک بسته را نصب می کند ، اما گاهی اوقات کد شما به یک نسخه بسته خاص نیاز دارد تا به درستی کار کند.
شما می خواهید مشخصات وابستگی ها و نسخه هایی را که قبلاً برای تهیه و آزمایش برنامه خود استفاده کرده اید ، ایجاد کنید تا در هنگام استفاده از برنامه در تولید ، جای تعجب نداشته باشید.
الزامات پین کردن
هنگامی که پروژه Python خود را با سایر توسعه دهندگان به اشتراک می گذارید ، ممکن است بخواهید از همان نسخه های بسته های خارجی که استفاده می کنید استفاده کنند. شاید یک نسخه خاص از یک بسته حاوی ویژگی جدیدی باشد که به آن اعتماد دارید ، یا نسخه بسته ای که استفاده می کنید با نسخه های قبلی ناسازگار است.
این وابستگی های خارجی نیز مورد نیاز است. شما اغلب پروژه های پایتون را پیدا خواهید کرد که نیازهای خود را در پرونده ای به نام مورد نیاز. txt یا مشابه قرار می دهد. قالب پرونده مورد نیاز به شما امکان می دهد دقیقاً مشخص کنید که بسته ها و نسخه ها باید نصب شوند.
Help Pip Help نشان می دهد که یک دستور Freeze وجود دارد که بسته های نصب شده را با فرمت مورد نیاز خروجی می کند. شما می توانید از این دستور استفاده کنید ، برای تولید یک پرونده مورد نیاز ، خروجی را به یک پرونده هدایت کنید:
این دستور یک پرونده مورد نیاز را در فهرست کار شما با محتوای زیر ایجاد می کند:
به یاد داشته باشید که X. Y. Z که در بالا نمایش داده می شود ، یک فرمت مکان نگهدارنده برای نسخه های بسته است. پرونده مورد نیاز شما. txt شامل شماره های نسخه واقعی خواهد بود.
فرمان Freeze نام و نسخه بسته های نصب شده در حال حاضر را به خروجی استاندارد می اندازد. می توانید خروجی را به پرونده ای هدایت کنید که بعداً می توانید از آنها برای نصب نیازهای دقیق خود در سیستم دیگری استفاده کنید. شما می توانید پرونده مورد نیاز را هرچه می خواهید نامگذاری کنید. با این حال ، یک کنوانسیون گسترده اتخاذ شده برای نامگذاری آن مورد نیاز است.
هنگامی که می خواهید محیط را در سیستم دیگری تکرار کنید ، می توانید PIP را با استفاده از سوئی چ-r برای مشخص کردن پرونده مورد نیاز اجرا کنید:
در دستور بالا ، به PIP می گویید بسته های ذکر شده در الزامات. txt را به محیط فعلی خود نصب کنید. نسخه های بسته با محدودیت های نسخه ای که پرونده مورد نیاز در آن وجود دارد مطابقت دارند. شما می توانید لیست PIP را برای نمایش بسته هایی که تازه نصب کرده اید ، با شماره نسخه آنها اجرا کنید:
اکنون شما آماده به اشتراک گذاشتن پروژه خود هستید! شما می توانید مورد نیاز. txt را به یک سیستم کنترل نسخه مانند GIT ارسال کرده و از آن برای تکرار همان محیط در سایر دستگاه ها استفاده کنید. اما صبر کنید ، اگر به روزرسانی های جدید برای این بسته ها منتشر شود ، چه اتفاقی می افتد؟
الزامات تنظیم دقیق
مشکل در کدگذاری نسخه ها و وابستگی های بسته های شما این است که بسته ها به طور مکرر با رفع اشکال و امنیت به روز می شوند. احتمالاً می خواهید به محض انتشار ، از این به روزرسانی ها استفاده کنید.
فرمت پرونده مورد نیاز به شما امکان می دهد نسخه های وابستگی را با استفاده از اپراتورهای مقایسه ای که به شما انعطاف پذیری می دهد برای اطمینان از به روزرسانی بسته ها در حالی که هنوز هم نسخه پایه یک بسته را تعریف می کنید ، مشخص کنید.
Open requirements.txt in your favorite editor and tu the equality operators ( == ) into greater than or equal to operators (>=) ، مانند مثال زیر:
You can change the comparison operator to>= برای گفتن پیپ برای نصب نسخه دقیق یا بیشتر که منتشر شده است. هنگامی که یک محیط جدید را با استفاده از پرونده مورد نیاز تنظیم می کنید ، PIP به دنبال آخرین نسخه ای است که نیاز را برآورده می کند و آن را نصب می کند.
در مرحله بعد ، می توانید بسته های موجود در پرونده مورد نیاز خود را با اجرای دستور نصب با سوئی چ-Upgrade ی ا-u Shorthand به روز کنید:
اگر نسخه جدیدی برای یک بسته ذکر شده در دسترس باشد ، بسته بندی به روز می شود.
در دنیای ایده آل ، نسخه های جدید بسته ها سازگار با عقب هستند و هرگز اشکالات جدیدی را معرفی نمی کنند. متأسفانه ، نسخه های جدید می توانند تغییراتی را ایجاد کنند که برنامه شما را بشکند. برای تنظیم دقیق نیازهای خود ، نحو پرونده مورد نیاز از مشخصات نسخه اضافی پشتیبانی می کند.
تصور کنید که نسخه جدید ، 3. 0 ، از درخواست ها منتشر شده است اما یک تغییر ناسازگار را معرفی می کند که برنامه شما را می شکند. برای جلوگیری از نصب 3. 0 یا بالاتر می توانید پرونده مورد نیاز را تغییر دهید:
تغییر مشخصات نسخه برای بسته درخواست ها تضمین می کند که هر نسخه بزرگتر از یا مساوی با 3. 0 نصب نمی شود. مستندات PIP اطلاعات گسترده ای در مورد قالب پرونده مورد نیاز ارائه می دهد ، و می توانید برای کسب اطلاعات بیشتر با آن مشورت کنید.
جدا کردن وابستگی های تولید و توسعه
همه بسته هایی که در طول توسعه برنامه های خود نصب می کنید ، وابستگی های تولیدی نخواهد بود. به عنوان مثال ، احتمالاً می خواهید برنامه خود را آزمایش کنید ، بنابراین به یک چارچوب آزمایش نیاز دارید. یک چارچوب محبوب برای آزمایش Pytest است. شما می خواهید آن را در محیط توسعه خود نصب کنید ، اما آن را در محیط تولید خود نمی خواهید ، زیرا این یک وابستگی به تولید نیست.
شما یک پرونده مورد نیاز دوم ، needs_dev. txt را ایجاد می کنید تا ابزارهای اضافی را برای تنظیم یک محیط توسعه ذکر کنید:
داشتن دو پرونده مورد نیاز خواستار استفاده از PIP برای نصب هر دو آنها ، مورد نیاز. txt و مورد نیاز_دوی. TXT است. خوشبختانه ، PIP به شما امکان می دهد پارامترهای اضافی را در یک پرونده مورد نیاز مشخص کنید ، بنابراین می توانید مورد نیاز_DEV. txt را اصلاح کنید تا الزامات را از پرونده مورد نیاز تولید کنید.
توجه کنید که شما از همان سوئی چ-r استفاده می کنید تا پرونده تولید را نصب کنید. اکنون ، در محیط توسعه خود ، شما فقط باید این دستور واحد را اجرا کنید تا تمام الزامات را نصب کنید:
از آنجا که مورد نیاز_Dev. txt حاوی خط مورد نیا ز-R. TXT است ، شما نه تنها Pytest بلکه نیازهای پین شده مورد نیاز را نیز نصب خواهید کرد. در یک محیط تولید ، فقط نصب نیازهای تولید کافی است:
با این دستور ، الزامات ذکر شده در Leading. txt را نصب می کنید. برخلاف محیط توسعه شما ، محیط تولید شما Pytest را نصب نکرده است.
الزامات انجماد برای تولید
شما پرونده های مورد نیاز تولید و توسعه را ایجاد کرده اید و آنها را به کنترل منبع اضافه کرده اید. این پرونده ها از مشخصات نسخه انعطاف پذیر استفاده می کنند تا اطمینان حاصل کنند که از رفع اشکال منتشر شده توسط وابستگی های خود استفاده می کنید. شما همچنین درخواست خود را آزمایش کرده اید و اکنون آماده استقرار آن در تولید هستید.
شما می دانید که تمام تست ها می گذرد و برنامه با وابستگی هایی که در فرآیند توسعه خود استفاده کرده اید ، کار می کند ، بنابراین احتمالاً می خواهید اطمینان حاصل کنید که نسخه های یکسان وابستگی ها را به تولید می اندازید.
مشخصات نسخه فعلی تضمین نمی کند که نسخه های یکسان برای تولید مستقر شوند ، بنابراین شما می خواهید قبل از انتشار پروژه خود نیازهای تولید را مسدود کنید.
پس از اتمام توسعه با نیازهای فعلی خود ، گردش کار برای ایجاد نسخه جدید پروژه فعلی شما می تواند به این شکل باشد:
| گام | فرمان | توضیح |
| 1 | پستان | تست های خود را اجرا کنید و تأیید کنید که کد شما به درستی کار می کند. |
| 2 | pip instal l-u -r الزامات . txt | نیازهای خود را به نسخه هایی که با محدودیت های موجود در پرونده مورد نیاز شما مطابقت دارند ارتقا دهید. |
| 3 | پستان | تست های خود را اجرا کنید و در نظر بگیرید که هرگونه وابستگی را که خطاها را به کد شما وارد کرده است ، کاهش دهید. |
| 4 | pip freeze>مورد نیاز_لوک. txt | هنگامی که پروژه به درستی کار کرد ، وابستگی ها را به یک پرونده مورد نیاز_لوک. txt یخ بزنید. |
با داشتن یک گردش کار مانند این ، پرونده مورد نیاز_لوک. txt حاوی مشخصات نسخه دقیقی خواهد بود و می تواند برای تکرار محیط شما استفاده شود. شما اطمینان حاصل کرده اید که وقتی کاربران شما بسته های ذکر شده در need_lock. txt را در محیط های خود نصب می کنند ، آنها از نسخه هایی که قصد استفاده از آنها را دارید استفاده می کنند.
انجماد نیازهای شما یک گام مهم برای اطمینان از این است که پروژه Python شما به همان روش برای کاربران خود در محیط های خود مانند آنچه در شما انجام شده است ، کار می کند.
بسته های حذف شده با PIP
یک بار در یک زمان ، شما باید یک بسته را حذف نصب کنید. یا کتابخانه بهتری برای جایگزینی آن پیدا کرده اید ، یا این چیزی است که شما به آن احتیاج ندارید. بسته های حذف شده می توانند کمی مشکل باشند.
توجه کنید که هنگام نصب درخواست ، PIP را نیز برای نصب سایر وابستگی ها نیز دریافت کردید. هرچه بسته های بیشتری نصب کنید ، این احتمال وجود دارد که چندین بسته به همان وابستگی بستگی داشته باشد. اینجاست که فرمان نمایش در پیپ مفید است.
قبل از حذف یک بسته ، حتما دستور نمایش را برای آن بسته اجرا کنید:
به دو قسمت آخر ، نیاز و مورد نیاز توجه کنید. دستور نمایش به شما می گوید که درخواست ها به گواهینامه ، IDNA ، charset-normalizer و urllib3 نیاز دارند. شما احتمالاً می خواهید این موارد را نیز حذف کنید. توجه کنید که درخواست ها توسط هیچ بسته دیگری لازم نیست. بنابراین حذف آن به راحتی ایمن است.
شما باید دستور نمایش را در برابر همه وابستگی های درخواست ها اجرا کنید تا اطمینان حاصل شود که هیچ کتابخانه دیگری نیز به آنها بستگی ندارد. هنگامی که ترتیب وابستگی بسته هایی را که می خواهید حذف کنید ، درک کنید ، می توانید آنها را با استفاده از دستور حذف حذف کنید:
دستور حذف پرونده هایی را که حذف می شوند به شما نشان می دهد و تأیید می کند. اگر مطمئن هستید که می خواهید بسته را حذف کنید زیرا وابستگی های آن را بررسی کرده اید و می دانید که هیچ چیز دیگری از آن استفاده نمی کند ، می توانید یک سوئی چ-y را برای سرکوب لیست پرونده و گفتگوی تأیید عبور دهید:
در اینجا شما Urllib3 را حذف کردید. با استفاده از سوئی چ-y ، گفتگوی تأیید را سرکوب می کنید و از شما می پرسد که آیا می خواهید این بسته را حذف نصب کنید.
در یک تماس واحد ، می توانید تمام بسته هایی را که می خواهید حذف کنید مشخص کنید:
می توانید چندین بسته را به دستور PIP حذف نصب کنید. اگر سوئیچ اضافی اضافه نکردید ، باید تأیید حذف هر بسته را تأیید کنید. با عبور از سوئی چ-y ، می توانید همه آنها را بدون هیچ گونه گفتگوی تأیید حذف کنید.
همچنین می توانید با ارائه گزین ه-r ، تمام بسته های ذکر شده در یک پرونده مورد نیاز را حذف کنید. این دستور درخواست تأیید برای هر بسته را سریع می کند ، اما می توانید آن را با سوئی چ-y سرکوب کنید:
به یاد داشته باشید همیشه وابستگی های بسته هایی را که می خواهید حذف کنید ، بررسی کنید. احتمالاً می خواهید همه وابستگی ها را حذف کنید ، اما حذف بسته ای که توسط دیگران استفاده می شود ، محیط کار شما را می شکند. در نتیجه ، پروژه شما ممکن است دیگر به درستی کار نکند.
اگر در یک محیط مجازی کار می کنید، ایجاد یک محیط مجازی جدید می تواند کار کمتری باشد. سپس می توانید بسته های مورد نیاز خود را به جای تلاش برای حذف بسته هایی که نیاز ندارید نصب کنید. با این حال، زمانی که نیاز به حذف یک بسته از نصب پایتون سیستم خود دارید، حذف پیپ می تواند واقعا مفید باشد. در صورتی که به طور تصادفی یک بسته را در سراسر سیستم نصب کنید، استفاده از Pip Uninstall راه خوبی برای شلوغ کردن سیستم شما است.
کاوش گزینه های جایگزین برای پیپ
انجمن پایتون ابزارها و کتابخانه های بسیار خوبی را برای شما فراهم می کند تا بتوانید از آنها فراتر از پیپ استفاده کنید. اینها شامل جایگزین هایی برای pip است که سعی در ساده سازی و بهبود مدیریت بسته دارند.
در اینجا چند ابزار مدیریت بسته دیگر وجود دارد که برای پایتون در دسترس است:
| ابزار | شرح |
| کوندا | Conda یک بسته، وابستگی و مدیر محیط برای بسیاری از زبان ها از جمله پایتون است. این از Anaconda می آید، که به عنوان یک بسته علم داده برای پایتون شروع شد. در نتیجه، به طور گسترده برای کاربردهای علم داده و یادگیری ماشین استفاده می شود. کوندا شاخص خود را برای میزبانی بسته های سازگار اجرا می کند. |
| شعر | اگر از جاوا اسکریپت و npm استفاده کنید، شعر برای شما بسیار آشنا به نظر می رسد. شعر فراتر از مدیریت بسته است و به شما کمک می کند تا برای برنامه ها و کتابخانه های خود توزیع ایجاد کنید و آنها را در PyPI مستقر کنید. |
| پیپنف | Pipenv یکی دیگر از ابزارهای مدیریت بسته است که محیط مجازی و مدیریت بسته را در یک ابزار واحد ادغام می کند. Pipenv: راهنمای ابزار جدید بسته بندی پایتون مکانی عالی برای شروع یادگیری در مورد Pipenv و رویکرد آن در مدیریت بسته است. |
فقط پیپ در نصب استاندارد پایتون همراه است. اگر می خواهید از گزینه های ذکر شده در بالا استفاده کنید، باید دستورالعمل های نصب را در مستندات آن ها دنبال کنید. با گزینه های بسیار، مطمئناً ابزارهای مناسب برای سفر برنامه نویسی خود را پیدا خواهید کرد!
نتیجه
بسیاری از پروژه های پایتون از مدیر بسته پیپ برای مدیریت وابستگی های خود استفاده می کنند. همراه با نصب کننده پایتون است و یک ابزار ضروری برای مدیریت وابستگی در پایتون است.
در این آموزش شما یاد گرفتید که چگونه:
- pip را در محیط کاری خود تنظیم و اجرا کنید
- خطاهای رایج مربوط به کار با PIP را برطرف کنید
- بسته های PIP را نصب و حذف نصب کنید
- الزامات پروژه ها و برنامه های خود را تعریف کنید
- پین کردن وابستگی ها در فایل های نیازمندی ها
علاوه بر این، شما در مورد اهمیت به روز نگه داشتن وابستگی ها و جایگزین های پیپ که می تواند به شما در مدیریت آن وابستگی ها کمک کند، یاد گرفته اید.
با نگاهی دقیق تر به PIP ، شما یک ابزار اساسی را در گردش کار توسعه پایتون بررسی کرده اید. با PIP ، می توانید هر بسته اضافی را که در PYPI پیدا می کنید ، نصب و مدیریت کنید. شما می توانید از بسته های خارجی از سایر توسعه دهندگان به عنوان الزامات استفاده کنید و روی کدی متمرکز شوید که پروژه شما را منحصر به فرد می کند.
اکنون تماشا کنید که این آموزش دارای یک دوره ویدیویی مرتبط است که توسط تیم واقعی پایتون ایجاد شده است. آن را به همراه آموزش کتبی برای تعمیق درک خود تماشا کنید: راهنمای مبتدی برای پیپ
هر دو روز یک ترفند کوتاه و شیرین پایتون را به صندوق ورودی خود تحویل دهید. هیچ اسپم هرگزاشتراک هر زمان را لغو کنید. تحت نظارت تیم واقعی پایتون.

در مورد فیلیپ آکسان
فیلیپ یک مهندس نرم افزار مستقر در برلین با پیشینه طراحی گرافیک و اشتیاق به توسعه وب تمام پشته است.
هر آموزش در Real Python توسط تیمی از توسعه دهندگان ایجاد می شود تا مطابق با استانداردهای با کیفیت بالا ما باشد. اعضای تیم که در این آموزش کار کرده اند عبارتند از:







استادمهارت های پایتون در دنیای واقعیبا دسترسی نامحدود به پایتون واقعی
به ما بپیوندید و به هزاران آموزش ، دوره های ویدیویی دستی و جامعه ای از Pythonistas متخصص دسترسی پیدا کنید:
استادمهارت های پایتون در دنیای واقعیبا دسترسی نامحدود به پایتون واقعی
به ما بپیوندید و به هزاران آموزش ، دوره های ویدیویی دستی و جامعه ای از Pythonistas متخصص دسترسی پیدا کنید:
شما چی فکر میکنید؟
غذای شماره 1 یا مورد علاقه شما چیست؟چگونه می خواهید مهارت های جدید خود را برای استفاده قرار دهید؟در زیر نظر خود را بگذارید و مارا آگاه کنید.
نکات اظهار نظر: مفیدترین نظرات مواردی است که با هدف یادگیری یا کمک به دانش آموزان دیگر نوشته شده است. نکاتی را برای پرسیدن سوالات خوب دریافت کنید و در پورتال پشتیبانی ما به سؤالات متداول پاسخ دهید. به دنبال یک مکالمه در زمان واقعی هستید؟از گپ واقعی جامعه Python دیدن کنید یا به جلسه پرسش و پاسخ زنده "ساعات اداری" بعدی بپیوندید. پایتونینگ مبارک!
استراتژیهای اسکالپ...
ما را در سایت استراتژیهای اسکالپ دنبال می کنید
برچسب :
نویسنده : ناصر تقوایی
بازدید : <-PostHit->
تاريخ : جمعه
5 خرداد
1402 ساعت: 12:19