इस खंड में, हम अजगर का उपयोग करके दो चर को एक पंक्ति में स्वैप करने जा रहे हैं। पायथन में दो चरों को स्वैप करने का मानक तरीका बहुत ही सरल और आसान है-
>>> a = 20;b=30 >>> a 20 >>> b 30 >>> #Swap two variable in one line >>> a, b = b, a >>> a 30 >>> b 20
उपरोक्त कोड a और b के स्वैप किए गए मान उत्पन्न करता है।
व्याख्या
पायथन बाएं से दाएं अभिव्यक्ति का मूल्यांकन करता है। हालांकि, किसी असाइनमेंट का मूल्यांकन करते समय, दाईं ओर का मूल्यांकन बाईं ओर से पहले किया जाता है।
इसका अर्थ है कि निम्नलिखित व्यंजक a, b =b, a
. के लिए-
दाईं ओर 'बी, ए' का मूल्यांकन किया जाता है, यानी मेमोरी में दो तत्वों का एक टपल बनाया जाता है। दो तत्व पहचानकर्ता बी और ए द्वारा निर्दिष्ट वस्तुएं हैं, जो प्रोग्राम के निष्पादन के दौरान निर्देश का सामना करने से पहले मौजूद थे।
-
एक बार टपल बन जाने के बाद, लेकिन इस टपल ऑब्जेक्ट का कोई असाइनमेंट अभी तक नहीं बनाया गया है, लेकिन यह कोई समस्या नहीं है, क्योंकि अजगर आंतरिक रूप से जानता है कि यह कहां है।
-
फिर लेफ्ट-हैंड साइड का मूल्यांकन किया जाता है, यानी- मेमोरी में स्टोर किए गए टपल को लेफ्ट-हैंड साइड को सौंपा जाता है क्योंकि लेफ्ट-हैंड साइड दो आइडेंटिफायर ए और बी से बना होता है। टपल को इस क्रम में अनपैक किया जाता है कि पहला पहचानकर्ता a (बाईं ओर) टपल के पहले तत्व (.i.e. b) द्वारा असाइन किया जाता है और दूसरा पहचानकर्ता b टपल के दूसरे तत्व (.i.e. a) द्वारा असाइन किया जाता है।
संक्षेप में, अभिव्यक्ति:"ए, बी =बी, ए", पहला दायां पहले बाएं को सौंपा गया है और दूसरा दायां एक ही समय में दूसरी बाईं ओर असाइन किया गया है इसलिए ए और बी के मूल्यों को स्वैप करें।