Venv, pyvenv, pyenv, virtualenv, virtualenvwrapper, pipenv, आदि में क्या अंतर है?


1019

पायथन 3.3 अपने मानक पुस्तकालय में नया पैकेज शामिल करता है venv। यह क्या करता है, और यह सभी अन्य पैकेजों से कैसे भिन्न होता है जो रेगेक्स से मेल खाते हैं (py)?(v|virtual|pip)?env?


20
और करीबी वोटों का प्रचार करने के लिए, मुझे लगा कि यह stackoverflow.com/questions/29950300/… की तुलना में अधिक सामान्य प्रश्न था , और इसलिए मैंने उस पोस्ट पर अति सामान्य उत्तर देने या उस प्रश्न को पोस्ट करने में सहज संपादन महसूस नहीं किया।
फ़्लिम

12
यह मार्गदर्शिका उपयोगी है और लगातार अपडेट की जाती है, क्योंकि अजगर अधिक से अधिक "एक और केवल एक ही स्पष्ट तरीका" जोड़ना जारी रखता है: docs.python-guide.org/en/latest/dev/virtualenvs
michael

2
3.6 के रूप में मुझे मैकॉन्से पर pyenv (मैं एक pyNoob) की तुलना में virtualenv काम करना आसान लगा
HashRocketSyntax

@HashRocketSyntax virtualenvऔर pyenvसमान फ़ंक्शन नहीं करते हैं, और एक दूसरे के विकल्प नहीं हैं। मेरा जवाब देखिए।
फ्लिम

6
मैंने पपेनवे के साथ पूरे दिन का समय बर्बाद किया। निचला रेखा, यह ओवरमार्केट है। यदि आपको py2 की आवश्यकता है तो वेनव और वर्चुअनव उचित उपकरण हैं। कोंडा (मिनीकोन्डा यदि आपको पूर्ण स्टैक की आवश्यकता नहीं है) भी बहुत अच्छा है। बहुत अच्छा राइटअप
SwimBikeRun

जवाबों:


1381

PyPI पैकेज मानक लाइब्रेरी में नहीं:

  • virtualenvएक बहुत लोकप्रिय उपकरण है जो पायथन पुस्तकालयों के लिए पृथक पायथन वातावरण बनाता है। यदि आप इस उपकरण से परिचित नहीं हैं, तो मैं इसे सीखने की सलाह देता हूं, क्योंकि यह एक बहुत ही उपयोगी उपकरण है, और मैं इस उत्तर के बाकी हिस्सों के लिए इसकी तुलना कर रहा हूं।

    यह एक डायरेक्टरी (उदाहरण:) में फाइलों का एक गुच्छा स्थापित करके काम करता है env/, और फिर PATHइसे कस्टम binनिर्देशिका (उदाहरण :) के साथ प्रीफ़िक्स करने के लिए पर्यावरण चर को संशोधित करता है env/bin/pythonया python3बाइनरी की एक सटीक प्रतिलिपि इस निर्देशिका में रखी गई है, लेकिन पायथन को पर्यावरणीय निर्देशिका में अपने पथ के सापेक्ष पुस्तकालयों की तलाश करने के लिए क्रमादेशित किया गया है। यह पायथन के मानक पुस्तकालय का हिस्सा नहीं है, लेकिन आधिकारिक तौर पर PyPA (पायथन पैकेजिंग अथॉरिटी) द्वारा धन्य है। एक बार सक्रिय होने के बाद, आप वर्चुअल वातावरण का उपयोग करके पैकेज स्थापित कर सकते हैं pip

  • pyenvका उपयोग पायथन संस्करणों को अलग करने के लिए किया जाता है। उदाहरण के लिए, आप पायथन 2.7, 3.6, 3.7 और 3.8 के खिलाफ अपने कोड का परीक्षण करना चाह सकते हैं, इसलिए आपको उनके बीच स्विच करने के लिए एक तरीके की आवश्यकता होगी। एक बार सक्रिय होने के बाद, यह PATHपर्यावरण चर के साथ उपसर्ग करता है ~/.pyenv/shims, जहां पायथन कमांड्स ( python, pip) से मेल खाते हुए विशेष फाइलें हैं । ये पायथन द्वारा शिप किए गए कमांड की प्रतियां नहीं हैं; वे विशेष स्क्रिप्ट हैं जो PYENV_VERSIONपर्यावरण चर, या .python-versionफ़ाइल, या फ़ाइल के आधार पर पायथन के संस्करण को उड़ने का निर्णय लेते हैं ~/.pyenv/versionpyenvकमांड का उपयोग करके कई पायथन संस्करणों को डाउनलोड करने और स्थापित करने की प्रक्रिया को आसान बनाता है pyenv install

  • pyenv-virtualenvpyenvउसी लेखक के लिए एक प्लगइन है pyenv, जैसा कि आप उपयोग करने की अनुमति देते हैं pyenvऔर virtualenvउसी समय आसानी से। हालाँकि, यदि आप 3.3 या बाद के पायथन का उपयोग कर रहे हैं, तो इसके बजाय, उपलब्ध pyenv-virtualenvहोने पर चलाने का प्रयास करेंगे । यदि आप सुविधा सुविधाओं को नहीं चाहते हैं, तो आप बिना उपयोग और एक साथ उपयोग कर सकते हैं ।python -m venvvirtualenvvirtualenvpyenvpyenv-virtualenv

  • virtualenvwrapperएक्सटेंशन का एक सेट है virtualenv( डॉक्स देखें )। यह आप की तरह आदेश देता है mkvirtualenv, lssitepackagesऔर विशेष रूप से workonअलग के बीच स्विच करने के लिए virtualenvनिर्देशिका। यदि आप एक से अधिक virtualenvनिर्देशिका चाहते हैं तो यह उपकरण विशेष रूप से उपयोगी है ।

  • pyenv-virtualenvwrapperpyenvउसी लेखक के लिए एक प्लगइन है pyenv, जैसा कि आसानी से एकीकृत virtualenvwrapperकिया जा सकता है pyenv

  • pipenvगठबंधन करने का लक्ष्य है Pipfile, pipऔर virtualenvकमांड-लाइन पर एक कमांड में। virtualenvनिर्देशिका आम तौर पर में रखा जाता है ~/.local/share/virtualenvs/XXX, के साथ XXXपरियोजना निर्देशिका के पथ का एक हैश किया जा रहा है। यह अलग है virtualenv, जहां निर्देशिका आमतौर पर वर्तमान कार्यशील निर्देशिका में है। pipenvइसका उपयोग पाइथन अनुप्रयोगों को विकसित करने के दौरान किया जाता है (पुस्तकालयों के विपरीत)। के विकल्प हैं pipenv, जैसे कि poetry, जो मैं यहां सूचीबद्ध नहीं करूंगा क्योंकि यह सवाल केवल उन पैकेजों के बारे में है जो समान रूप से नामित हैं।

मानक पुस्तकालय:

  • pyvenvएक स्क्रिप्ट है जिसे पायथन 3 के साथ भेज दिया गया है लेकिन अजगर 3.6 में चित्रित किया गया है क्योंकि इसमें समस्याएं थीं (भ्रमित नाम का उल्लेख नहीं करना)। पायथन 3.6+ में, सटीक समतुल्य है python3 -m venv

  • venvएक पैकेज है जिसे पायथन 3 के साथ भेजा गया है, जिसे आप उपयोग कर सकते हैं python3 -m venv(हालांकि किसी कारण से कुछ डिस्ट्रो इसे अलग डिस्ट्रो पैकेज में अलग कर देते हैं, जैसे कि python3-venvउबंटू / डेबियन पर)। यह एक ही उद्देश्य के रूप में कार्य करता है virtualenv, लेकिन केवल इसकी विशेषताओं का एक सबसेट ( यहां एक तुलना देखें ) है। virtualenvकी तुलना में अधिक लोकप्रिय होना जारी है venv, खासकर जब से पूर्व पायथन 2 और 3 दोनों का समर्थन करता है।

शुरुआती लोगों के लिए सिफारिश:

शुरुआती लोगों के लिए यह मेरी व्यक्तिगत सिफारिश है: सीखने से शुरू करें virtualenvऔर pip, उपकरण जो पायथन 2 और 3 और विभिन्न स्थितियों में दोनों के साथ काम करते हैं, और एक बार जब आप उन्हें ज़रूरत शुरू करते हैं तो अन्य उपकरण उठाते हैं।


115
यह बहुत मददगार है! तो 1 के बजाय 8 पेचीदा चीजें क्यों हैं? ("वहाँ एक होना चाहिए - और अधिमानतः केवल एक ही - स्पष्ट तरीके से इसे करने के लिए।" - पायथन का ज़ेन)
जैरी 101

59
@ जेरी १०१०, वेनव का परिचय उस गंदगी की प्रतिक्रिया के हिस्से में है। यदि आप स्थिति को बेहतर बनाने में मदद करना चाहते हैं, तो मेरा सुझाव है कि आप वेनव का उपयोग करें और दूसरों को भी ऐसा करने के लिए प्रोत्साहित करें।
मैग्नस लिंड ऑक्सलुंड

31
"वेनव की शुरूआत उस गंदगी की प्रतिक्रिया के रूप में होती है" कैसे आते हैं जब बहुत सारी चीजें होती हैं जो 'एक्स जैसा कुछ' करती हैं, लोगों को हमेशा लगता है कि वे उस चीज़ को बेहतर बना सकते हैं एक दूसरी चीज़ जो 'एक्स की तरह कुछ करता है' । वास्तव में अपनी तरह का मजाकिया। अब हम 4 साल बाद हैं ... तो यह पूछना उचित हो सकता है venvकि क्या वास्तव में उस समस्या का समाधान हुआ है?
क्रिस

34
सूची में केवल दो उपकरण जो वास्तव में कवर करते हैं, यकीनन एक ही क्षेत्र virtualenv और venv हैं, इसलिए हम जिस विशेषता को लेकर कई प्रतिस्पर्धी उपकरणों के कारण गड़बड़ी कर रहे हैं वह बहुत सटीक नहीं है। हालाँकि, सूची में कई आभासी पर्यावरण से संबंधित उपकरण शामिल हैं, सभी समान-ध्वनि वाले नामों के साथ हैं। यह भ्रामक हो सकता है, खासकर उन उपयोगकर्ताओं के लिए जो केवल उनके बारे में सीख रहे हैं। क्या वेनव ने स्थिति में सुधार किया? इसने अन्य आभासी पर्यावरण साधनों के लिए अधिक हल्के वजन वाले विकल्प की पेशकश की, जो देशी संशोधनों और मानक पुस्तकालय में एक स्थान से लाभान्वित हुआ। …
मैग्नस लिंड ऑक्सलुंड

11
@cowbert सिर्फ पायथन 3.5 से पायथन 3.6 में अपग्रेड करने और मेरे सभी वर्चुअन को तोड़ने के बाद, ऐसा लगता है venvकि आप नए पायथन संस्करण में और आसानी से अपग्रेड कर सकते हैं।
डैनियल एच

275

मैं सिर्फ virtualenvPython3.3 + के बाद के उपयोग से बचूंगा और इसके बजाय मानक शिप लाइब्रेरी का उपयोग करूंगा venv। एक नया आभासी वातावरण बनाने के लिए आप टाइप करेंगे:

$ python3 -m venv <MYVENV>  

virtualenvवर्चुअल वातावरण में पायथन बाइनरी को कॉपी करने की कोशिश करता है। हालाँकि यह उस बाइनरी में एम्बेडेड लाइब्रेरी फ़ाइल लिंक को अपडेट नहीं करता है, इसलिए यदि आप स्रोत से पायथॉन बाइनरी ब्रेक के साथ गैर-सिस्टम निर्देशिका में पायथन का निर्माण करते हैं। चूंकि यह है कि आप एक वितरण योग्य पायथन कैसे बनाते हैं, यह एक बड़ा दोष है। BTW OS X, उपयोग पर एम्बेडेड लाइब्रेरी फ़ाइल लिंक का निरीक्षण करने के लिए otool। अपने आभासी वातावरण में उदाहरण के लिए, टाइप करें:

$ otool -L bin/python
python:
    @executable_path/../Python (compatibility version 3.4.0, current version 3.4.0)
    /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1238.0.0)

नतीजतन मैं बचता virtualenvwrapperऔर बचता pipenvpyvenvपदावनत किया गया है। pyenvलगता है जहाँ अक्सर उपयोग किया जाता है, virtualenvलेकिन मैं इससे भी दूर रहूँगा क्योंकि मुझे लगता है कि venvयह भी वही करता है जो इसके pyenvलिए बनाया गया है।

venvशेल में आभासी वातावरण बनाता है जो उपयोगकर्ता-इंस्टॉल करने योग्य पुस्तकालयों के साथ ताजा और सैंडबॉक्स किया जाता है , और यह बहु-अजगर सुरक्षित हैताजा क्योंकि आभासी वातावरण केवल मानक पुस्तकालयों के साथ शुरू होता है जो अजगर के साथ जहाज करते हैं, आपको वर्चुअल वातावरण के सक्रिय होने के दौरान किसी भी अन्य लाइब्रेरी को फिर से स्थापित करना होगा । Sandboxed क्योंकि इनमें से कोई भी नई लाइब्रेरी इंस्टॉल वर्चुअल वातावरण के बाहर दिखाई नहीं देती है, इसलिए आप पूरे वातावरण को हटा सकते हैं और अपने बेस पायथन इंस्टॉल को प्रभावित करने की चिंता किए बिना फिर से शुरू कर सकते हैं। उपयोगकर्ता-इंस्टॉल करने योग्य लाइब्रेरी क्योंकि वर्चुअल वातावरण का लक्ष्य फ़ोल्डर बिना बनाया गया हैpip installsudoकुछ निर्देशिका में आप पहले से ही स्वयं हैं, इसलिए आपको आवश्यकता नहीं होगीsudoइसमें पुस्तकालय स्थापित करने की अनुमति। अंत में यह बहु-अजगर सुरक्षित है , क्योंकि जब आभासी वातावरण सक्रिय होता है, तो शेल केवल अजगर संस्करण (3.4, 3.5 आदि) को देखता है जो उस आभासी वातावरण को बनाने के लिए उपयोग किया गया था।

pyenvइसके समान है venvकि यह आपको कई अजगर वातावरण का प्रबंधन करने देता है। हालाँकि, pyenvआप आसानी से रोलबैक लाइब्रेरी को कुछ शुरुआती स्थिति में स्थापित नहीं कर सकते हैं और आपको adminपुस्तकालयों को अपडेट करने के लिए कुछ बिंदु पर विशेषाधिकारों की आवश्यकता होगी । इसलिए मुझे लगता है कि इसका उपयोग करना भी सबसे अच्छा है venv

पिछले कुछ वर्षों में मैंने बिल्ड सिस्टम (एमएसीएस पैकेज, पायथन स्टैंडअलोन एप्लिकेशन बिल्डरों, इंस्टॉलर ...) में कई समस्याएं पाई हैं, जो अंततः मुद्दों के साथ आते हैं virtualenv। मुझे लगता है कि जब हम इस अतिरिक्त विकल्प को खत्म करते हैं और केवल उपयोग करते हैं तो अजगर एक बेहतर मंच होगा venv


3
add2virtualenvके तहत PYTHONPATHएक कस्टम _virtualenv_path_extensions.pthफ़ाइल जोड़कर अपने tweaks site-packages। वैकल्पिक रूप से आप फ़ाइल PYTHONPATHमें पर्यावरण चर को अद्यतन कर सकते हैं bin/activateजिसे आप हर बार कॉल करते समय वर्चुअल वातावरण को सक्रिय करते हैं। या आप site-packagesअतिरिक्त निर्देशिकाओं को इंगित करने के लिए सीमलिंक जोड़ सकते हैं । ये दोनों विकल्प पारंपरिक कमांड लाइन टूल डेवलपर्स के लिए अधिक पारदर्शी हैं जो व्यापक रूप से समस्या निवारण के लिए उपयोग करते हैं। .pthएक अनिर्दिष्ट नाम के साथ एक कस्टम का उपयोग , यह अधिक जादुई IMO लगता है।
रियाज रिजवी

15
ठीक है इसलिए मैंने stackoverflow.com/questions/48130371/… पर पुष्टि की है कि एक सही अद्यतन PYTHONPATHकी आवश्यकता को कम करता है add2virtualenv। आपकी पहली टिप्पणी से SO पर मदद की कमी के बारे में, मेरा एकमात्र सुझाव उत्तर है यदि वे आपकी समस्या को ठीक करते हैं, जब आप पोस्ट करते हैं तो लोगों को आपके लिए समस्या निवारण के लिए प्रेरित करते हैं? एक माउस क्लिक के बदले में आधे घंटे की जांच + राइट-अप? एक अच्छे ट्रेड की तरह लगता है ...
रियाज़ रिज़वी

7
नहीं, आप सही हैं - मैं उत्थान के बारे में अच्छा बनने की कोशिश करता हूं। हेक, अगर तुम मेरे क्षेत्र में होते तो मैं तुम्हें एक बीयर खरीदता। मैं अपने वादे पर कायम रहूंगा और देखूंगा कि अजगर डॉक्टर लोगों को मुझे / बिन में बदलाव करने देगा / स्पष्ट करने के लिए आधिकारिक डॉक्स सक्रिय करेगा। हालाँकि, मैं महान नहीं हूँ, मैं अजगर में भयानक नहीं हूँ। अगर यह मेरे लिए कठिन था ... वैसे भी, आपके समय के लिए धन्यवाद - आपको शुभकामनाएं।
स्टीवजे

9
@ मलिक.अमी का आशीर्वाद "पिपेनव निर्माता के लिए हमारी और दूसरों के लिए लगन से काम करने के लिए थोड़ा कम किया गया है, यही कारण है कि हम पिपेनव का उल्लेख करते हैं"।
रोब ग्रांट

6
@AndreaMoro यह ऐसा है pyvenvकि पदावनत किया जाता है, नहीं pyenv। इन उपकरणों के नामों के साथ भ्रमित होना बहुत आसान है।
डेनियल होम्स 14

24

मैंने pipenvखरगोश छेद नीचे चला गया है ( यह वास्तव में एक गहरा और गहरा छेद है ... ) और चूंकि अंतिम उत्तर 2 साल पहले खत्म हो गया है , ऐसा लगा कि पायथन वर्चुअल लिफाफे विषय I पर नवीनतम घटनाओं के साथ चर्चा को अद्यतन करना उपयोगी था। 'पाया है।

अस्वीकरण:

यह उत्तर लिफाफे के घोल के रूप में पिपेनव बनाम वेनव के गुणों के बारे में उग्र बहस जारी रखने के बारे में नहीं है- मैं या तो इसका कोई समर्थन नहीं करता हूं । यह PEPA के बारे में परस्पर विरोधी मानकों का समर्थन करता है और कैसे virtualenv के भविष्य के विकास के लिए या तो उन दोनों के बीच / या पसंद को नकारने का वादा करता है । मैंने इन दो उपकरणों पर ठीक से ध्यान केंद्रित किया क्योंकि वे PyPA द्वारा अभिषिक्त हैं ।

venv

ओपी नोट्स के रूप में, वेव वर्चुअलाइज़िंग वातावरण के लिए एक उपकरण है। नहीं एक तीसरी पार्टी के समाधान है, लेकिन देशी उपकरण। PyPA, VIRTUAL ENVELOPES बनाने के लिए venv का समर्थन करता है : " संस्करण 3.5 में परिवर्तित: अब वर्चुअल वातावरण बनाने के लिए venv के उपयोग की सिफारिश की गई है "।

pipenv

pipenv - तरह venv - आभासी लिफाफे लेकिन इसके साथ ही रोल में पैकेज प्रबंधन और बनाने के लिए इस्तेमाल किया जा सकता भेद्यता जाँच कार्यक्षमता। उपयोग करने के बजायrequirements.txt, Pipfile केpipenv माध्यम से पैकेज प्रबंधन देता है। के रूप में Pypa के लिए समर्थन किया pipenv पैकेज प्रबंधन , होने का संकेत देने के लिए प्रतीत होता हैको प्रतिस्थापित करने के लिए है।pipfilerequirements.txt

हालांकि : pipenv का उपयोग करता है virtualenv आभासी लिफाफे बनाने के लिए अपने उपकरण के रूप में, नहीं venv जो ने समर्थन किया है Pypa आभासी लिफाफे बनाने के लिए जाने के लिए उपकरण के रूप में।

विरोधी मानक:

तो अगर एक आभासी लिफाफा समाधान पर निपटाने मुश्किल पर्याप्त नहीं था, अब हम है Pypa जो विभिन्न आभासी लिफाफा समाधान का उपयोग दो टूल का समर्थन करते। Venv बनाम virtualenv पर उग्र गितुब बहस जो इस संघर्ष को उजागर करता है यहां पाया जा सकता है

संघर्ष समाधान:

Github बहस ऊपर के लिंक में संदर्भित प्रशस्त किया virtualenv मिलनसार की दिशा में विकास venv में भावी रिलीज़ :

बिल्ट-इन वेनव पसंद करें: यदि लक्ष्य अजगर में वेव है, तो हम उस का उपयोग करके पर्यावरण बनाएंगे (और फिर उस पर बाद में संचालन करते हैं ताकि हम अन्य गारंटी प्रदान कर सकें)

निष्कर्ष:

तो ऐसा लगता है कि दो प्रतिद्वंद्वी आभासी लिफाफा समाधानों के बीच कुछ भविष्य के अभिसरण होंगे, लेकिन अब पाइपनव के रूप में - जो उपयोग करता है virtualenv- से भौतिक रूप से भिन्न होता है venv

यह देखते हुए समस्याओं pipenv को हल करती है और तथ्य यह है कि Pypa अपने आशीर्वाद दिया है, यह प्रतीत होता है एक उज्जवल भविष्य है। और अगर virtualenv अपने प्रस्तावित विकास उद्देश्यों को पूरा करता है, तो आभासी लिफाफा समाधान चुनना अब pipenv या venv का मामला नहीं होना चाहिए ।


6
मुझे जो समझ में आया है: पिपेनव के वास्तविक मूल्य पर पहले ही थोड़ी देर के लिए बहस हुई है और एक साल से अधिक समय में इसकी रिलीज नहीं हुई है। तब से कई चीजें बदल गई हैं, और मैं यह तर्क दूंगा कि यह केवल पिपेनव के लिए खराब हो गया ( कविता और पाइप-उपकरण जैसे उपकरण बहुत बेहतर आकार में हैं)। Pypa पृष्ठों पुराने हो गए हैं, और मैं लोगों का तर्क था कि वे अवनत चाहिए pipenvvenv एक मानक उपकरण है और जैसा कि बहुत ही कुशल है, लेकिन इसमें सुविधाओं का एक सीमित सेट है। virtualenv के साथ प्रतिस्पर्धा नहीं है venv लेकिन कोशिश करता क्षेत्रों को कवर करने जहां venv नहीं कर सकते हैं या जाने के लिए (क्योंकि यह एक मानक है) नहीं चाहता है।
सिनोरोक

@sinoroc मेरी पोस्ट मेरिट या पिपेनव के बारे में नहीं थी। यह पाइपेव और वेनव दोनों के समर्थन के परस्पर विरोधी मार्गदर्शन के बारे में थी, जो लिफाफे के घोल की पसंद को और अधिक कठिन बना देता था और यह प्रतीत होता है कि कुछ हद तक अभिसरण चुनने की आवश्यकता को नकार देगा। उनके बीच बिल्कुल। ध्यान दें कि मैं किसी भी चीज़ का समर्थन नहीं करता, बस साझा किया है कि मैंने क्या सीखा है कि ये दो समाधान PyPA द्वारा समर्थित कैसे विकसित हो रहे हैं। उनमें PyPA की रुचि को देखते हुए, चाहे मैं उन्हें पसंद करता हूं या नहीं, अप्रासंगिक हो जाता है: pipenv और venv को परिदृश्य का हिस्सा बनने की संभावना थी
F1Linux

8
मैं कहूंगा कि जितना संभव हो सके वेव और पाइप से चिपके रहें । ये दोनों यहां रहने के लिए हैं, वेव अजगर के मानक पुस्तकालय का हिस्सा है और एक अर्थ पाइप में भी है क्योंकि यह अजगर (सुनिश्चितप के माध्यम से ) में वर्गीकृत है । अन्य उपकरण ( एक तरफ pyenv श्रृंखला: पूरी तरह से अलग बात) या तो पर भरोसा करते हैं या अनुकरण (अधिक या कम सफलता के साथ) venv और pip । जो माहान है। लेकिन अगर चीजें बेईमानी से चलती हैं , तो वेनव और पाइप सुरक्षित कमबैक हैं। एकमात्र अन्य उपकरण जो मैं उपयोग करता हूं वह विषाक्त है (साथ में) tox-venv) आभासी वातावरण बनाने और आबाद करने में मदद करने के लिए (सीधा, कोई जादू नहीं, अजीब है जिसका अभी तक उल्लेख नहीं किया गया है)।
सिनोरोक

2
यह नवीनतम पोस्ट सोना है क्योंकि इसने झुर्रियों को दूर करने में बहुत अच्छा काम किया। मैं पाइप और वेन से चिपक रहा हूं क्योंकि मेरे पास वर्चुअलनेव का उपयोग करने वाले बायनेरिज़ के साथ समस्या थी जब सिस्टम अजगर को उन्नत किया गया था।
कोडविपर

1
अतीत में मैं त्रुटियों पर पिपेनव नॉनवॉर्ब के साथ मुद्दों में भाग गया। अर्गला और खाई। इसके अलावा: chriswarrick.com/blog/2018/07/17/…
qrtLs

3

अप्रैल 2020 अपडेट

जब मैं इस पद पर आया था तो मैं वही खोज रहा था । मुझे लगता है कि मेरे जैसे नए पायथन उपयोगकर्ताओं के लिए इस उपकरण का उपयोग करने का यह मुद्दा काफी भ्रामक और कठिन है। यह सीधे PyPA वेबसाइट से pipenv के बारे में है:

हालांकि यह ट्यूटोरियल पाइपेन प्रोजेक्ट को एक उपकरण के रूप में कवर करता है, जो मुख्य रूप से पायथन लाइब्रेरी डेवलपमेंट के बजाय पायथन एप्लिकेशन डेवलपमेंट की जरूरतों पर केंद्रित है, प्रोजेक्ट वर्तमान में कई प्रक्रिया और रखरखाव मुद्दों के माध्यम से काम कर रहा है जो बग फिक्स और नई सुविधाओं को प्रकाशित होने से रोक रहा है ( 2019 की संपूर्णता के साथ एक नई रिलीज के बिना गुजर रहा है)। इसका मतलब यह है कि निकट अवधि में, पिपेनव अभी भी कई quirks और उन समस्याओं के समाधान के लिए एक स्पष्ट समयरेखा के बिना प्रदर्शन की समस्याओं से ग्रस्त है।

हालांकि यह स्थिति बनी हुई है, प्रोजेक्ट मेंटेनर आवेदन की निर्भरता प्रबंधन के लिए अन्य उपकरणों की जांच करने की संभावना रखते हैं, इसके बजाय, या पाइपलाइनन के साथ उपयोग के लिए।

अप्रैल 2020 तक पाइपेनेव रिलीज को योजना के अनुसार आगे बढ़ाया गया, और उसके बाद रिलीज भी पटरी पर रही, फिर ट्यूटोरियल पर इस चेतावनी को हटा दिया जाएगा। यदि वे रिलीज़ ट्रैक पर नहीं रहते हैं, तो ट्यूटोरियल को हटा दिया जाएगा, और उपलब्ध निर्भरता प्रबंधन विकल्पों पर चर्चा पृष्ठ के साथ बदल दिया जाएगा।


लगता है कि पिप्लेनव वर्तमान में (मई 2020 में) अप्रैल 2020 की रिलीज़ के लिए पूर्व-रिलीज़ में है। देखें यहाँ
एंड्रयूज

इस सवाल का जवाब नहीं है।
फ्लिम

मुझे लगता है कि @ फ्लीम ने सवालों के अच्छे से जवाब दिए। मैं F1Linux के जवाब का जवाब दे रहा था
अर्नुल्ड

4 जून 2020 के रूप में, pipenvटीम PyPI के 2 संस्करण जारी किया है: 2020.5.28और हाल ही में 2020.6.2: pypi.org/project/pipenv/#history
nonbeing
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.