2009-08-02 12 views
21

मेरे पास वर्तमान में मैक पर स्थापित पायथन के कई संस्करण हैं, जो इसके साथ आया है, जो संस्करण मैंने हाल ही में python.org से डाउनलोड किया है, जो पुराने संस्करण को ज़ोप को स्थानीय रूप से चलाने के लिए उपयोग किया जाता है और दूसरा संस्करण जो ऐपेंगिन का उपयोग कर रहा है। यह एक गड़बड़ है। उन सभी पर शासन करने के लिए अजगर के एक संस्करण का उपयोग करने की कोई सिफारिशें? मैं हटाए गए पुराने संस्करणों के बारे में कैसे जाउंगा और अपने सभी ऐप्स को एक ही इंस्टॉल से लिंक करूँगा। किसी भी मैक विशिष्ट gotchas मुझे पता होना चाहिए? क्या यह एक बेवकूफ विचार है?ओएस एक्स तेंदुए पर पाइथन के कई संस्करण

+0

इस ब्लॉग पोस्ट को पढ़ें: http://farmdev.com/thoughts/66/python-3-0-on-mac-os-x-alongside-2-6-2-5-etc-/ –

उत्तर

20

पाइथन के कई संस्करणों के साथ स्वाभाविक रूप से गलत कुछ भी नहीं है। कभी-कभी संस्करण निर्भरताओं वाले अनुप्रयोगों का उपयोग करते समय यह एक आवश्यकता होती है। शायद सबसे बड़ी समस्या साइट-पैकेज निर्भरताओं से निपट रही है जो ऐप से ऐप में भिन्न हो सकती हैं। virtualenv जैसे टूल वहां मदद कर सकते हैं। एक चीज आपको नहीं ऐप्पल द्वारा आपूर्ति किए गए पायथन को/सिस्टम/लाइब्रेरी/फ्रेमवर्क में निकालने का प्रयास है और/usr/bin/python से जुड़ा हुआ है। (एक से अधिक संस्करण here की हाल ही में चर्चा ध्यान दें।)

+1

+1 virtualenv पर। मैं वर्चुअलएनवी होम पेज से जुड़ा हुआ हूं। –

1

दृष्टिकोण मैं पसंद है जो हर यूनिक्स जैसे ऑपरेटिंग सिस्टम पर काम करना चाहिए:

प्रत्येक आवेदन जो एक विशिष्ट अजगर संस्करण एक उपयोगकर्ता खाते की आवश्यकता के लिए बनाएँ। प्रत्येक उपयोगकर्ता में स्थापित उपयोगकर्ता के स्थानीय उपसर्ग (जैसे ~/build/python) के साथ संबंधित पायथन संस्करण को गिनें और उपयोगकर्ता के पाथ पर्यावरण चर में ~/build/bin/जोड़ें। अपने सही उपयोगकर्ता में अपने पायथन अनुप्रयोगों को स्थापित/उपयोग करें।

इस दृष्टिकोण का लाभ व्यक्तिगत पायथन प्रतिष्ठानों और सही पायथन पर्यावरण के अपेक्षाकृत सुविधाजनक चयन (उचित उपयोगकर्ता को केवल su) के बीच एकदम सही अलगाव है। इसके अलावा ऑपरेटिंग सिस्टम छूटा रहता है।

9

इयान बिकिंग virtualenv मुझे मेरे द्वारा बनाए गए प्रत्येक एप्लिकेशन के लिए अलग पाइथन रखने की अनुमति देता है, और मुझे यह तय करने देता है कि पृथक पायथन पर्यावरण में वैश्विक साइट-पैकेज शामिल करना है या नहीं।

मैं Zope साथ यह कोशिश की है नहीं, लेकिन मेरा अनुमान है कि निम्न अच्छी तरह से काम करना चाहिए:

  1. का उपयोग करते हुए अपने Zope के अजगर, एक नया virtualenv बनाने के लिए, के साथ या --no-साइट के बिना -packages
  2. virtualenv में अपने Zope ड्रॉप
  3. अब $ VENV/bin के साथ पर्यावरण को सक्रिय/
  4. को सक्रिय $ VENV/bin/अजगर पर किसी भी जरूरत साइट-संकुल
  5. अपने Zope भागो अजगर का उपयोग कर स्थापित करें

इसने पाइथन, डीजेगो और एड-ऑन के विभिन्न संस्करणों के साथ Django परियोजनाओं के प्रबंधन के लिए शानदार ढंग से काम किया है।

This article ग्रोक और वर्चुअलवेव के विनिर्देशों पर अधिक जानकारी में जाना प्रतीत होता है, लेकिन सामान्यताओं को ज़ोप के साथ-साथ लागू होना चाहिए। वर्चुअलएन्व के लिए

2

+1।

भले ही आपको विभिन्न पायथन संस्करणों की आवश्यकता न हो, फिर भी आपके विकास निर्भरताओं को आपके सिस्टम पायथन से अलग रखना अभी भी अच्छा है।

मुझे यकीन नहीं है कि आप किस ओएस का उपयोग कर रहे हैं, लेकिन मुझे these ओएसएक्स पर चल रहे पायथन विकास वातावरण प्राप्त करने के लिए बहुत उपयोगी निर्देश मिलते हैं।

संबंधित मुद्दे