पायथन के मानक वितरण में निर्मित मॉड्यूल और पैकेज के अलावा, तीसरे पक्ष के डेवलपर्स से बड़ी संख्या में पैकेज पायथन पैकेज इंडेक्स (https://pypi.org/) नामक पायथन पैकेज रिपॉजिटरी में अपलोड किए जाते हैं। यहां से पैकेज स्थापित करने के लिए, पाइप उपयोगिता की जरूरत है। पाइप उपकरण एक स्वतंत्र परियोजना है, लेकिन पायथन 3.4 के बाद से, इसे पायथन वितरण में बूटस्ट्रैप किया गया है।
सुनिश्चितपिप मॉड्यूल पायथन की मौजूदा स्थापना में पाइप बूटस्ट्रैपिंग के लिए समर्थन प्रदान करता है। आम तौर पर उपयोगकर्ता को इसे स्पष्ट रूप से उपयोग करने की आवश्यकता नहीं होती है। हालांकि, यदि सामान्य इंस्टॉलेशन या वर्चुअल वातावरण में पाइप की स्थापना को छोड़ दिया जाता है, तो इसकी आवश्यकता हो सकती है।
निम्नलिखित कमांड पाइप उपयोगिता स्थापित किए बिना एक आभासी वातावरण बनाएगी।
C:\python37>python -m venv --without-pip e:\testenv
वर्चुअल वातावरण निर्देशिका के अंतर्गत स्क्रिप्ट फ़ोल्डर में पाइप उपयोगिता नहीं है। सिस्टम वाइड इंस्टॉलेशन में इसके संस्करण का उपयोग करके अब इसमें पाइप को शामिल करने के लिए सुनिश्चितपिप मॉड्यूल का उपयोग किया जाता है। इसके नवीनतम संस्करण के लिए '--अपग्रेड' निर्दिष्ट करें
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
पाइप की डिफ़ॉल्ट स्थापना को निम्नलिखित विकल्पों द्वारा संशोधित किया जा सकता है
-
--रूट
- वर्तमान में सक्रिय वर्चुअल वातावरण (यदि कोई हो) की जड़ या वर्तमान पायथन स्थापना के लिए डिफ़ॉल्ट रूट के बजाय दी गई रूट निर्देशिका के सापेक्ष पाइप स्थापित करता है। -
--उपयोगकर्ता - वर्तमान पायथन इंस्टॉलेशन के लिए विश्व स्तर पर के बजाय उपयोगकर्ता साइट पैकेज निर्देशिका में पाइप स्थापित करता है (सक्रिय वर्चुअल वातावरण के अंदर इस विकल्प की अनुमति नहीं है)।
सुनिश्चितपिप मॉड्यूल ने निम्नलिखित कार्यों को भी परिभाषित किया है
-
ensurepip.version() - पाइप के बंडल संस्करण को निर्दिष्ट करते हुए एक स्ट्रिंग देता है जो किसी वातावरण को बूटस्ट्रैप करते समय स्थापित किया जाएगा।
-
ensurepip.bootstrap() - बूटस्ट्रैप वर्तमान या निर्दिष्ट वातावरण में पिप करते हैं।
बूटस्ट्रैपिंग प्रक्रिया का sys.path और os.environ दोनों पर दुष्प्रभाव होता है। साथ ही, बूटस्ट्रैपिंग प्रक्रिया पाइप द्वारा आवश्यक अतिरिक्त मॉड्यूल स्थापित कर सकती है, लेकिन अन्य सॉफ़्टवेयर को यह नहीं मानना चाहिए कि वे निर्भरताएं हमेशा डिफ़ॉल्ट रूप से मौजूद रहेंगी