Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Python

पायथन 2.x और 3.x के बीच प्रमुख अंतर

पायथन 2.x और 3.x के बीच महत्वपूर्ण अंतर जो हर डेवलपर को पता होने चाहिए।

1. प्रिंट फ़ंक्शन

पायथन 2: print एक स्टेटमेंट है।

print 'Hello, World!'
print 'text', ; print 'more text'  # कॉमा से नो-न्यूलाइन

पायथन 3: print() एक फ़ंक्शन है।

print('Hello, World!')
print('some text,', end='')
print('some more text here')

2. इंटीजर डिवीजन

एक्सप्रेशनपायथन 2पायथन 3
3 / 21 (फ्लोर)1.5 (ट्रू)
3 // 211
3 / 2.01.51.5

सुझाव: पायथन 2 में from __future__ import division उपयोग करें।

3. यूनिकोड स्ट्रिंग्स

  • पायथन 2: डिफ़ॉल्ट ASCII। यूनिकोड के लिए u'...' प्रीफिक्स।
  • पायथन 3: डिफ़ॉल्ट यूनिकोड (UTF-8)। बाइट्स के लिए b'...'।
# Python 3
print('strings are now utf-8 \u03BCnico\u0394é!')
# Python 2 में 'str' बाइट्स था, 'unicode' टेक्स्ट

4. एक्सेप्शन उठाना

# दोनों में काम करता है
raise IOError("your error message")

# केवल पायथन 2
raise IOError, "your error message"  # Python 3 में SyntaxError

5. लिस्ट कॉम्प्रिहेंशन लूप वेरिएबल लीक

# Python 2
i = 1
[i for i in range(5)]
print(i)  # 4 (लीक हो गया!)

# Python 3
i = 1
[i for i in range(5)]
print(i)  # 1 (सुरक्षित)

6. अन्य उल्लेखनीय अंतर

  • range(): पायथन 2 में लिस्ट लौटाता है, पायथन 3 में जेनरेटर-जैसा ऑब्जेक्ट।
  • dict.keys(), .values(), .items(): पायथन 2 में लिस्ट, पायथन 3 में व्यू ऑब्जेक्ट्स।
  • xrange(): पायथन 2 में मौजूद, पायथन 3 में हटाया गया ( range() का उपयोग करें)।
  • __next__() vs .next(): पायथन 3 में __next__()।

निष्कर्ष

पायथन 3 अब मानक है (पायथन 2 EOL जनवरी 2020)। नए प्रोजेक्ट्स के लिए पायथन 3 का उपयोग करें। लिगेसी कोड माइग्रेट करते समय उपरोक्त अंतरों पर ध्यान दें।

  1. विंडोज XP और विंडोज 7 के बीच शीर्ष 10 अंतर विंडोज XP और विंडोज 7 के बीच शीर्ष 10 अंतर

    यदि आप विंडोज विस्टा को छोड़ गए जैसे कई अन्य लोगों ने किया है, तो जब आप विंडोज XP से विंडोज 7 में अपग्रेड करेंगे तो आपको झटका लग सकता है। माइक्रोसॉफ्ट का नवीनतम ऑपरेटिंग सिस्टम पिछले विंडोज वर्जन से उपयोगिता, सुविधा और समग्र कंप्यूटिंग में एक बड़ा बदलाव है। हालांकि सभी परिवर्तन पृथ्वी को हिला देने

  1. - पायथन 2.x और 3.x वर्जन्स में क्या अंतर हैं?

    पायथन 2.x लिगेसी है, पायथन 3.x भाषा का वर्तमान और भविष्य है। केवल 3.x रिलीज में उपलब्ध सुविधाओं की एक गैर-विस्तृत सूची जो पायथन 2.x में उपलब्ध नहीं हैं - स्ट्रिंग्स डिफ़ॉल्ट रूप से यूनिकोड हैं साफ यूनिकोड/बाइट्स पृथक्करण अपवाद चेनिंग फंक्शन एनोटेशन कीवर्ड-ओनली आर्गुमेंट्स के लिए सिंटैक्स एक्सटेंड

  1. - पायथन 2.7.x और पायथन 3.x के बीच मुख्य अंतर क्या हैं?

    पायथन 3.0 दिसंबर 2008 में जारी किया गया था। इसे पहले के संस्करण में कुछ खामियों को सुधारने के लिए डिज़ाइन किया गया था। पायथन 3 का मार्गदर्शक सिद्धांत था: पुराने तरीकों को हटाकर फीचर डुप्लीकेशन को कम करें। पायथन 3.0 बैकवर्ड कम्पैटिबिलिटी प्रदान नहीं करता। इसका मतलब है कि संस्करण 2.x सिंटैक्स का उपयो