प्रणाली के आधार पर, python
== python2
या python
== python3
।
पायथन स्क्रिप्ट्स के साथ शुरू होता है:
#!/usr/bin/env python
#!/usr/bin/env python2
#!/usr/bin/env python3...
अजगर py3k के लिए यह प्रलेखन में प्रदान किया जाता है जो मुझे संस्करण संख्या के साथ उपयोग करना चाहिए / कर सकता है , इसलिए मैं ऐसा करता हूं:
#!/usr/bin/env python3
लेकिन मुझे py2k स्क्रिप्ट के साथ एक समस्या मिली है।
में रहते हुए py2k प्रलेखन यह उपयोग करने के लिए लिखा है: #! /usr/bin/env python
,
कुछ * nix-es python py3k पर डिफ़ॉल्ट है, इसलिए python == python3। (उदाहरण के लिए ArchLinux python package , here python package files )।
वितरण करने के लिए पैकेज को कैसे कॉन्फ़िगर करें (कॉन्फ़िगर करें, करें) और / या तैयार करें कि इसे संभाल सकें?
मैं ऐसे सॉफ्टवेयर पैकेज बनाने के बारे में पूछता हूं जो उपयोगकर्ताओं द्वारा आसानी से चलाए जा सकते हैं (बिना उनके वातावरण को संशोधित किए)
क्या मैं अजगर py2k स्क्रिप्ट के लिए अजगर की स्क्रिप्ट के समान ट्रिक कर सकता हूं और इसे इस प्रकार सेट कर सकता हूं #!/usr/bin/env python2
:? क्या मुझे यकीन है कि प्रत्येक अजगर py2k वितरण में python2
फ़ाइल शामिल है, इसलिए #!/usr/bin/env python2
काम करेगा?
यदि हाँ, तो यह मानक के रूप में प्रस्तावित क्यों नहीं है, उदाहरण के लिए अजगर py2k प्रलेखन में ?
python2
। मुझे आश्चर्य है कि py2k और py3k होने पर इसका उपयोग करने के लिए मानक क्यों नहीं है और डिफ़ॉल्ट python
अलग हो सकता है। हटाने के बारे में आपकी सलाह के बारे में क्या है - यह इस उदाहरण के लिए उचित नहीं है, क्योंकि मैं पैकेजिंग के बारे में पूछता हूं। मैं ऐसा पैकेज बनाना चाहूंगा जो विभिन्न कॉन्फ़िगरेशन / सिस्टम में चल सके। पर्यावरण को संशोधित करने का कोई तरीका नहीं। जाँच के बारे में क्या - यह शेबंग पर लागू नहीं होता है - जहाँ तक मुझे पता है।
#!...python2
अपने कार्यक्रमों में उपयोग करें और यदि आप Python 3.x का उपयोग कर रहे हैं, तो उपयोग करें #!...python3
। यदि आप जानते हैं कि यह केवल एक विशेष रिलीज पर काम करेगा, तो सही लिंक होने के लिए ऑपरेटिंग सिस्टम पर भरोसा न करें। मैं उन प्रणालियों के साथ काम करता हूं जिनमें अभी भी Python 1.5.2 स्थापित है /usr/bin/python
- मैं या तो पुराने Python रिलीज़ को संभालने या उपयोग करने के लिए कोड लिखता हूं python2
।
python2
मेरे सिस्टम पर एक निष्पादन योग्य नहीं है (डेबियन निचोड़)। python
के लिए एक सहानुभूति है python2.6
, और इसके python3
लिए एक सहानुभूति है python3.1
, लेकिन कोई भी नहीं है python2
।
python2
इसे चलाने के लिए उपयोग कर सकते हैं (यदि यह स्थापित है), और इसके साथ आप संस्करण की जाँच कर सकते हैंpython -V
। यदि आप चाहते हैं किpython
यह 2 या 3 होगा, तो आपकोrm /usr/bin/python
अपने डेसिडर पायथन संस्करण जैसे अंक बनाने वाले सिमलिंक बनाने चाहिएln -s /usr/bin/python2.5 /usr/bin/python
।