सिर्फ प्रदर्शन के सवाल पर, पायथन 3 पाइथन 2.x की तुलना कैसे करता है?प्रदर्शन: पायथन 3.x बनाम पायथन 2.x
उत्तर
3.0 आधिकारिक मानकों पर 2.5 से धीमा है। "What’s New in Python 3.0" से:
3,0 सामान्यीकरण का शुद्ध परिणाम है कि अजगर 3.0 10% अजगर 2.5 की तुलना में धीमी आसपास pystone बेंचमार्क चलाता है। सबसे अधिक संभावना सबसे बड़ा कारण छोटे पूर्णांक के लिए विशेष-आवरण को हटाने का सबसे बड़ा कारण है। सुधार के लिए कमरा है, लेकिन 3.0 जारी होने के बाद होगा!
यह अभी भी 2015 में आम तौर पर सच है, यदि प्रश्न में कोड में बहुत सारे स्ट्रिंग ऑपरेशंस हैं, तो पाइथन 2.7 नवंबर 2015 तक आमतौर पर पाइथन 3.5 की तुलना में तेज़ है। –
मैं कहूंगा कि कोई अंतर तुच्छ से नीचे होगा। उदाहरण के लिए, एक सूची में लूपिंग सटीक वही होगी।
पायथन 3 के पीछे विचार भाषा सिंटैक्स को साफ करना है - except Exception1, Exception2
जैसे प्रतिष्ठित सामान को हटाएं, मानक मॉड्यूल साफ़ करें (कोई urllib, urllib2, httplib आदि)।
वास्तव में आप इसके प्रदर्शन में सुधार करने के लिए बहुत कुछ नहीं कर सकते हैं, हालांकि मुझे लगता है कि कचरा संग्रह और मेमोरी प्रबंधन कोड जैसी चीजें कुछ बदलावों में होंगी, लेकिन यह "वाह, मेरी डेटाबेस सांख्यिकी पीढ़ी नहीं होगी" कोड आधे समय में पूरा हो जाता है! " सुधार - भाषा के बजाए कोड को बेहतर बनाकर आपको कुछ मिलता है!
वास्तव में, भाषा का प्रदर्शन अप्रासंगिक है - सभी व्याख्या की गई भाषा मूल रूप से एक ही गति पर कार्य करती हैं। मुझे पाइथन "तेज" क्यों बनाया गया है, सभी अंतर्निर्मित moudles, और अच्छी तरह से लिखने वाले वाक्यविन्यास - में को Python3 में सुधार किया गया है, इसलिए मुझे लगता है कि उन शर्तों में, हाँ, python3 का प्रदर्शन बेहतर है python2 .x ..
"सभी व्याख्या की गई भाषा मूल रूप से एक ही गति पर कार्य करती हैं" बहुत सच नहीं है। व्याख्या कोड कोड को मूल कोड में संकलित किया जा सकता है, हाल ही में जावास्क्रिप्ट वीएम प्रतियोगियों को देखें। –
जिसका मतलब भाषा के बारे में कुछ भी नहीं है, लेकिन इसके लिए लिखे गए कंपाइलर। आप * एक पाइथन कंपाइलर हो सकता है और यह लगभग जावास्क्रिप्ट के रूप में तेज़ होगा। – gbjbaanb
मुझे यह तेज़ नहीं है, लेकिन मुझे उम्मीद है कि अंत में ऐसा होगा क्योंकि वह नया प्रदर्शन कार्य होगा और उन सभी को वापस नहीं भेजा जाएगा।
जब तक कि किसी प्रकार के नए वीएम की योजना नहीं है (और मैंने ऐसी किसी भी योजना के बारे में नहीं सुना है), तो यह मानने का सभी कारण है कि लंबे समय तक पीई 3 के प्रदर्शन का प्रदर्शन कम से कम होगा asymptotically, 2.5
में कुछ महीनों लग सकते हैं, लेकिन अंततः ऐसा होगा, क्योंकि Py3k की नई सुविधाओं में कुछ भी निहित रूप से कम प्रदर्शन करने वाला नहीं है।
निष्कर्ष निकालने के लिए, मुझे नहीं लगता कि इसके बारे में चिंता करने की जगह है। न तो किसी तरह के बड़े सुधार की उम्मीद है।
(अद्यतन 30.03.2010): यह उत्तर बहुत प्रासंगिक नहीं है आज, चूंकि अनदेखा-निगल पाइथन 3 में विलय किया जा रहा है और ध्यान देने योग्य गति प्रदान करता है। निष्पक्ष होने के लिए, यह * एक नया वीएम है :-) –
मुझे लगता है कि अंत में अभी तक इस तरह की तुलना करने के लिए बहुत जल्दी है। बेंचमार्किंग से पहले बीटा से बाहर होने तक प्रतीक्षा करें। दुभाषिया को रिलीज से पहले काफी पॉलिश किया जाएगा, लेकिन कुल मिलाकर मुझे लगता है कि अधिकांश उपयोगों के लिए प्रदर्शन तुलनीय होगा और यदि आप वास्तव में गतिशील जागरूक ऐप चला रहे हैं तो क्या वास्तव में सही भाषा का उपयोग करने के लिए पाइथन वास्तव में है?
- 1. पायथन 2.x या 3.x
- 2. पायथन 2.x और 3.x
- 3. पायथन 2.x से 3.x
- 4. पायथन 3.x
- 5. टोरनाडो और पायथन 3.x
- 6. java.lang.IllegalStateException एंड्रॉइड 3.x और 4.x में; 2.x
- 7. पायथन 3.x में नया क्या है?
- 8. पायथन 3.x tkinter त्रुटि आयात
- 9. पायथन, नेटवर्क x
- 10. पायथन - [x, y]
- 11. पायथन 2.x जितना संभव हो पाइथन 3.x के साथ ज्यादा संगत लिखना है?
- 12. पायथन 2 बनाम पायथन 3 - urllib प्रारूप
- 13. पाइथन 2.x
- 14. फेसबुक आईओएस एसडीके 2.x से 3.x
- 15. पायथन 2.x प्रोग्राम को पायथन 2.x के भीतर से कॉल करने का सबसे अच्छा तरीका क्या है?
- 16. पायथन: "if 'x' dict में" और "i i dict ['x']"
- 17. x^2 = x000 x का x कैसे प्राप्त करें?
- 18. यह सच है = पायथन 2.x में झूठी काम
- 19. पायथन 2.x - stdout के लिए बाइनरी आउटपुट लिखें?
- 20. पायथन (3.x) में थियेटरेटर थकने से कैसे रोकें?
- 21. पायथन 3.x: यदि जनरेटर के पास शेष तत्व हैं
- 22. HttpClient 3.x से 4.x
- 23. रेल 1.X और 2.X
- 24. एंड्रॉइड 2.x
- 25. x, y = getPos() बनाम (x, y) = getPos()
- 26. Node.js - क्या मुझे वास्तव में विजुअल स्टूडियो की आवश्यकता है? और पायथन 2.X या 3.X?
- 27. क्या ओपनजीएल 2.X को छोड़ना और OpenGL 3.X सीखना बेहतर है?
- 28. पायथन [x, y] का अर्थ पाइथन
- 29. पायथन 2 और 3
- 30. ट्विटर बूटस्ट्रैप 2.x
इस प्रश्न के दो साल बाद पूछा गया, मुझे आश्चर्य है कि उत्तर अभी भी वही है। – ripper234
इस सवाल के सात साल बाद पूछा गया, जवाब अभी भी वही है। –