2014-11-06 9 views
10

मैं दोनों को Python2 और python3दोनों को Python2 और python3 के साथ एक virtualenv बनाएं

प्रति virtualenv with python2 and python3 via Homebrew मैं आशा व्यक्त की यह काम करेगा के साथ एक virtualenv बनाने के लिए virtualenvwrapper का उपयोग करने की कोशिश की:

(virtualenv का नाम 'डबल है ')

mkvirtualenv double -p `which python` 
mkvirtualenv double -p `which python3` 

यह कहा गया है कि

Not overwriting existing python script both/bin/python (you must use both/bin/python3.4) 

लेकिन यह सच नहीं लगता है। टाइपिंग pythonpython2.7python3 और python3.4 सभी python3.4 दुभाषिया शुरू करें।

+8

आप इसे करने के द्वारा क्या करने की कोशिश कर रहे हैं? वर्चुअलएन्ड्स का एक बड़ा लाभ पाइथन 2 और पायथन 3 के लिए अलग-अलग दुनिया को बंद कर रहा है। – Kevin

+1

मैं एक ऐसी परियोजना पर काम कर रहा हूं जो दोनों पायथन 2 और पायथन 3 में चलता है। मैं वर्चुअलएन्व को हर समय स्विच नहीं करना चाहता हूं। python2 और python3 के पास अलग-अलग स्थानों में पाइप और स्टोर साइट-पैकेज का अपना संस्करण है, इसलिए मुझे समस्या दिखाई नहीं दे रही है। – Zweedeend

+6

यदि उद्देश्य परियोजना का परीक्षण करना है, तो पायथन 2 और 3 में परीक्षण चलाने के लिए टोक्स का उपयोग करें। अन्यथा मैं इसे 3.x में विकसित करने और इसे अलग से 2 में चलाने का सुझाव देता हूं। यहां वर्णित सभी टूल्स एक पायथन प्रति वर्चुअलएन्व के साथ दिमाग में विकसित किए गए थे, जबकि चीजें प्रारंभ में काम करने लगती हैं, इस बात की कोई गारंटी नहीं है कि यह काम जारी रहेगा। –

उत्तर

13

क्षमा करें, वर्चुअलनेव को एकल दुभाषिया संस्करण का समर्थन करने के लिए डिज़ाइन किया गया है।

यदि आपको एक ही कोडबेस पर कई पायथन संस्करणों का उपयोग करने की आवश्यकता है तो कृपया अलग वर्चुअल वातावरण बनाएं। पैकेज यहाँ है

0

मैं इस Vagrant/VirtualBox के शामिल के लिए एक समाधान है ... (यह एक Django probject शुरू करने के लिए मेरी बूटस्ट्रैप सेटअप है, लेकिन यह कांटा और इसके साथ जंगली जाना!)

, https://github.com/andrewyoung1991/python-3.4.1-vagrant-bootstrap.git वर्चुअल-एनवी दुर्भाग्यवश एक सिंगल-पायथन गेम है लेकिन वर्चुअलबॉक्स के साथ आप एक सैंडबॉक्स कॉलिंग में आसानी से काम कर सकते हैं जिसे python2 या python3

3

virtualenv वातावरण को अलग करने में आपकी सहायता करता है।

यह एक ही समय में एकाधिक पायथन संस्करण का समर्थन नहीं कर सकता है। आप pyenv और pyenv-virtualenv आज़मा सकते हैं। यह आपको फ़ोल्डर को किसी अन्य पायथन संस्करण और कार्य वातावरण में बदलने का समर्थन करता है। यह संस्करण बहुत आसानी से स्विच करें।

यदि आप मैक पर पायनव और काम नहीं कर सकते हैं। anyenv आपको pyenv इंस्टॉल करने में मदद कर सकता है।

उदाहरण:

$ pyenv install 3.4.1 
$ pyenv install 2.7.6 
$ pyenv virtualenv 3.4.1 mypy3 
$ pyenv virtualenv 2.7.6 mypy2 
$ pyenv versions 
    * system 
    3.4.1 
    2.7.6 
    mypy3 

$ cd /work/ 
$ pyenv local mypy3  # Use Py3 now 
$ pyenv local mypy2  # Use Py2 now 
5

virtualenv कई दुभाषिया संस्करणों का समर्थन नहीं करता। मेरा सुझाव है कि प्रत्येक संस्करण के लिए विभिन्न वातावरण का उपयोग करें:

virtualenv -p /usr/bin/python3.3 py3env 
virtualenv -p /usr/bin/python py2env 
संबंधित मुद्दे