2010-04-02 6 views
26

मैं पाइथन 3.x की गाथा का अनुसरण कर रहा हूं और 3.x लाइनों को धीरे-धीरे वापस प्राप्त करने वाली 3.x सुविधाओं को देखा है।पायथन - 2.7 में क्या नहीं है जो 3.1 में है? इतनी सारी चीज़ें वापस आ गई हैं, क्या नहीं है?

मेरे द्वारा उपयोग किए जाने वाले अधिकांश पुस्तकालयों को पोर्ट नहीं किया गया है और कुछ (उदा। मुड़ते हुए) अलग-अलग डिग्री के लिए 3.x तक गुप्त रूप से या अत्यधिक शत्रुतापूर्ण प्रतीत होते हैं। किसी भी दर पर, उनमें से कई के संगत संस्करणों के प्रति बहुत कम आंदोलन रहा है। खासकर बड़े लोग।

तो, मेरा प्रश्न है कि बैकपोर्ट किए गए सभी सुविधाओं के साथ, 3.x में अभी भी क्या उपलब्ध है जिसे वापस पोर्ट नहीं किया गया है? यह देखने में बहुत आसान है कि में बैकपोर्ट किया गया है, लेकिन क्या छोड़ा गया है।

अभी, 3.x पर पोर्टिंग बस सभी दर्द की तरह लगता है, और मैं लाभ नहीं देख सकता; शायद एक "केवल 3.x में" सूची मुझे प्रकाश देखते हैं कि ...

धन्यवाद,

स्टू

+5

क्या आप '__future__ आयात से' आयात किए गए उन सुविधाओं की गणना करते हैं? – kennytm

+0

लगता है जैसे आप वास्तव में जानना चाहते हैं कि आपको Python3 पर पोर्ट क्यों करना चाहिए। इसका उत्तर कई बार पहले ही दिया गया है। –

+1

नहीं, मैं वास्तव में यह पता लगाने की कोशिश कर रहा हूं कि पाइथन 3 में क्या है जो बैक-पोर्ट नहीं किया गया है। – StuFuller

उत्तर

6

सबसे महत्वपूर्ण बात यह शायद भर यूनिकोड है। तो स्ट्र/यूनिकोड के साथ चारों ओर झुकाव करने की कोई ज़रूरत नहीं है। यह छोटे लगता है लेकिन जब आप ओएस इंटरैक्शन के बारे में सोचते हैं तो बड़े (सकारात्मक) प्रभाव पड़ते हैं - उदाहरण के लिए हर किसी को 'एक बाइनरी चीज जो एक त्रुटि संदेश हो सकता है' के बजाय आपको 'उपयोग करने योग्य' तार देने के लिए कड़ी मेहनत करनी पड़ती है।

दुभाषिया में भी बहुत सी चीजें हैं जो बेहतर हुईं। एक उदाहरण ग्लोबल दुभाषिया लॉक (जीआईएल) है जो गायब नहीं हुआ है लेकिन यह py3k में बेहतर तरीका है: presentation+slides

+0

3.3 में एक बेहतर यूनिकोड कार्यान्वयन है। वर्तमान में 3.x में अन्य यूनिकोड सुधार और बगफिक्सेस हैं। –

3

गति उल्लेखनीय विशेषता हो सकती है।

प्रोजेक्ट "अनलेडन निगल" की गति अपरिवर्तन को पायथन में विलय करने के लिए अनुमोदित किया गया है। लेकिन जहां तक ​​मुझे केवल पायथन 3 पता है। विवरण के लिए PEP 3146 देखें।

+0

AFAIK, अमेरिका इस बिंदु पर गंभीर स्मृति आवश्यकताओं और लंबे स्टार्टअप समय के कारण एक गैर स्टार्टर है, हालांकि मुझे यकीन है कि काम किया जाएगा (शायद पूर्व-प्रोफाइलिंग के साथ कई लोगों ने सुझाव दिया है)। – StuFuller

+0

यदि "गैर स्टार्टर" से आपका मतलब है, "प्री-अल्फा" तो, हाँ। Unladen निगल CPython के साथ एकीकृत करने के लिए अनुमोदित है, और प्रासंगिक काम पूरा होने के बाद, उस घटना के लिए कोई महत्वपूर्ण बाधा नहीं है। –

+1

डेवलपर समुदाय को पाइथन 3 के लिए अनलाडेन निगल पर फॉलो-थ्रू के लिए बहुत उत्साह नहीं लगता है। शायद वे उस काम के Google के समर्थन पर भरोसा कर रहे थे, लेकिन मेलिंग सूची से ऐसा लगता है कि Google ने उन डेवलपर्स को दूसरे स्थान पर ले जाया है काम जो Google के लिए उच्च प्राथमिकता है। –

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