पायथन में कुछ मामलों में हम सिंगल अंडरस्कोर (_) का उपयोग करते हैं और कुछ मामलों में हम डबल अंडरस्कोर (__) का उपयोग करते हैं।
पायथन में निम्नलिखित मामले हैं, जहां हम अंडरस्कोर का उपयोग करते हैं।
- अगर हम दुभाषिए में लास्ट एक्सप्रेशन की वैल्यू स्टोर करना चाहते हैं।
- यदि हम कुछ मूल्यों को अनदेखा करना चाहते हैं।
- चर या फ़ंक्शन की घोषणा के लिए।
- संख्या पार्श्व मान के अंकों को अलग करने के लिए।
- इसका उपयोग 'अंतर्राष्ट्रीयकरण (i18n)' या 'स्थानीयकरण (l10n)' कार्यों के रूप में भी किया जाता है।
अब हर मामले पर कुछ उदाहरण।
दुभाषिया में प्रयुक्त
पायथन इंटरप्रेटर आखिरी एक्सप्रेशन वैल्यू को '_' में स्टोर करता है।
>>> 20 20 >>> _ 20 >>> _ + 3 23
मानों को अनदेखा करना
अंडरस्कोर का उपयोग मूल्यों को अनदेखा करने के लिए भी किया जाता है।
x, _, y = (1, 2, 3)
यहां x =1, y =3 और मान 2 को अनदेखा करें।
चर और फ़ंक्शन घोषित करने के लिए उपयोग किया जाता है
पायथन निजी का समर्थन नहीं करता है, इसलिए हम कुछ निजी लोगों को मजबूर नहीं कर सकते हैं लेकिन हम इसे सीधे अन्य मॉड्यूल से कॉल कर सकते हैं।
single_trailing_underscore_
इस रूपांतरण का उपयोग आसानी से पायथन कीवर्ड और बिल्ट-इन के परस्पर विरोधी से बचा जा सकता है।
__double_leading_underscore
यह मैंगल है, इसका उपयोग नामों के बीच विशेषताओं के नाम के टकराव से बचने के लिए किया जाता है।
यदि आप किसी वर्ग में विधि नाम “__display” लिखते हैं, तो नाम “_ClassName__display” रूप में उलझ जाएगा।
__double_leading_and_trailing_underscore__
कुछ मामलों में हम इस रूपांतरण का उपयोग करते हैं। बिल्कुल _init_ की तरह।
संख्या पार्श्व मान के अंकों को अलग करने के लिए
dec_base = 1_000_000 print(dec_base) # 1000000
अंतर्राष्ट्रीयकरण (i18n)/स्थानीयकरण (l10n) के रूप में कार्य करता है
यह सिर्फ एक सम्मेलन है, यहां कोई वाक्य रचनात्मक कार्य अंडरस्कोर नहीं है, बस i18n/l10n को अंडरस्कोर चर के लिए बाध्य करें सी सम्मेलन से किया गया है।