पायथन के स्टैंडर्ड डिस्ट्रीब्यूशन में बिल्ट-इन मॉड्यूल्स और पैकेजेस के अलावा, थर्ड-पार्टी डेवलपर्स के बड़ी संख्या में पैकेजेस पायथन पैकेज रिपॉजिटरी Python Package Index (https://pypi.org/) पर अपलोड किए जाते हैं। यहां से पैकेजेस इंस्टॉल करने के लिए pip यूटिलिटी की आवश्यकता होती है। pip टूल एक स्वतंत्र प्रोजेक्ट है, लेकिन पायथन 3.4 से यह पायथन डिस्ट्रीब्यूशन में बूटस्ट्रैप्ड है।
ensurepip मॉड्यूल पायथन के मौजूदा इंस्टॉलेशन में pip को बूटस्ट्रैप करने के लिए सपोर्ट प्रदान करता है। आमतौर पर उपयोगकर्ता को इसका स्पष्ट रूप से उपयोग करने की आवश्यकता नहीं होती। यदि हालांकि, सामान्य इंस्टॉलेशन या वर्चुअल एनवायरनमेंट में pip का इंस्टॉलेशन छोड़ दिया जाता है, तो इसकी आवश्यकता हो सकती है।
निम्न कमांड pip यूटिलिटी के बिना एक वर्चुअल एनवायरनमेंट बनाएगी:
C:\python37>python -m venv --without-pip e:\testenv
वर्चुअल एनवायरनमेंट डायरेक्टरी के अंतर्गत scripts फ़ोल्डर में pip यूटिलिटी नहीं होती। ensurepip मॉड्यूल का उपयोग अब इसे सिस्टम-वाइड इंस्टॉलेशन में इसके संस्करण का उपयोग करके इसमें शामिल करने के लिए किया जाता है। इसके नवीनतम संस्करण के लिए '--upgrade' निर्दिष्ट करें:
E:\testenv>scripts\python -m ensurepip --upgrade Looking in links: C:\Users\acer\AppData\Local\Temp\tmpp1bb2lym Collecting setuptools Collecting pip Installing collected packages: setuptools, pip Successfully installed pip-18.1 setuptools-40.6.2
डिफ़ॉल्ट इंस्टॉलेशन संशोधित करना
pip के डिफ़ॉल्ट इंस्टॉलेशन को निम्न विकल्पों द्वारा संशोधित किया जा सकता है:
--root <dir> - वर्तमान में सक्रिय वर्चुअल एनवायरनमेंट (यदि कोई हो) या वर्तमान पायथन इंस्टॉलेशन के लिए डिफ़ॉल्ट रूट के बजाय दिए गए रूट डायरेक्टरी के सापेक्ष pip इंस्टॉल करता है।
--user - वर्तमान पायथन इंस्टॉलेशन के लिए वैश्विक रूप से के बजाय यूजर साइट पैकेज डायरेक्टरी में pip इंस्टॉल करता है (यह विकल्प सक्रिय वर्चुअल एनवायरनमेंट के अंदर अनुमत नहीं है)।
ensurepip फ़ंक्शन्स
ensurepip मॉड्यूल निम्न फ़ंक्शन्स भी परिभाषित करता है:
ensurepip.version() - बूटस्ट्रैपिंग एनवायरनमेंट के समय इंस्टॉल होने वाले pip के बंडल्ड संस्करण को निर्दिष्ट करने वाला एक स्ट्रिंग लौटाता है।
ensurepip.bootstrap() - वर्तमान या नामित एनवायरनमेंट में pip को बूटस्ट्रैप करता है।
बूटस्ट्रैपिंग प्रक्रिया के sys.path और os.environ दोनों पर साइड इफेक्ट्स होते हैं। साथ ही, बूटस्ट्रैपिंग प्रक्रिया pip द्वारा आवश्यक अतिरिक्त मॉड्यूल्स इंस्टॉल कर सकती है, लेकिन अन्य सॉफ़्टवेयर को यह नहीं मानना चाहिए कि वे डिफ़ॉल्ट रूप से हमेशा मौजूद रहेंगे।