आज, मैं अपनी कॉपी और पेस्ट गलती के बारे में एक कहानी बताने जा रहा हूं और कैसे अनुगामी अल्पविराम के साथ एक स्ट्रिंग युग्मित हो जाती है और मेरे पायथन प्रोग्राम में टुपल() बन जाती है। अजीब बात है कि यह गलती करने से पहले मुझे इस अवधारणा के बारे में पता नहीं था।
तो, आइए पायथन में स्ट्रिंग और टुपल के बारे में त्वरित रूप से सीखना शुरू करें।
परिभाषा: पाठ को संग्रहीत और हेरफेर करने के लिए उपयोग किए जाने वाले वर्णों का एक क्रम।
सिंटैक्स: सिंगल कोट्स '', डबल कोट्स " ", या ट्रिपल कोट्स '''''/""" """'' में संलग्न।
अपरिवर्तनीयता: निर्माण के बाद स्ट्रिंग्स को बदला नहीं जा सकता।
# Example mystring = "Hello, World!" print(type(mystring)) #Output:mystring2 =str() print(type(mystring2)) #Output:
परिभाषा: मूल्यों का एक अपरिवर्तनीय अनुक्रम।
वाक्यविन्यास: अल्पविराम द्वारा अलग किए गए कोष्ठक ( ) से परिभाषित।
अपरिवर्तनीयता: एक बार बनने के बाद, तत्वों को बदला नहीं जा सकता।
# Example mytuple = (1,2) print(type(mytuple)) #Output:mytuple2 =tuple() print(type(mytuple2)) #Output:
अब, हम स्ट्रिंग और टुपल के बारे में जानते हैं और सीधे असाइनमेंट का उपयोग करके या कंस्ट्रक्टर का उपयोग करके क्लास दृष्टिकोण का उपयोग करके स्ट्रिंग या टुपल प्रकार का एक वेरिएबल कैसे प्राप्त करें। लेकिन, मेरी कहानी अलग है :)।
पायथन स्टेटमेंट को अर्धविराम (;) या अल्पविराम (,) या किसी अन्य समापन प्रतीक की आवश्यकता नहीं है (ब्लॉक को संभालने के लिए रिक्ति का उपयोग किया जाता है), तो आप "अजीत कुमार" जैसी स्ट्रिंग के साथ एक अनुगामी अल्पविराम कैसे समाप्त कर सकते हैं, क्योंकि अक्सर आप शब्दकोश की सूची से स्ट्रिंग तत्व की प्रतिलिपि बनाते हैं और अक्सर अनुगामी अल्पविराम के साथ समाप्त होते हैं। मेरे साथ यही हुआ और फिर कहानी दिलचस्प हो गई.
तो, पहले मेरे स्ट्रॉय का एक उदाहरण लें।
mymistake = "Ajit Kumar", print(type(mymistake)) #Output :
अब, ध्यान देने योग्य दो बातें हैं:
1) पायथन दुभाषिया स्ट्रिंग 'मायमिस्टेक' के साथ अनुवर्ती अल्पविराम के कारण कोई त्रुटि नहीं देगा, अन्यथा त्रुटि आगे नहीं बढ़ेगी।
2) स्ट्रिंग वेरिएबल बनाने के मूल उद्देश्य की तुलना में वेरिएबल प्रकार 'ट्यूपल' बन गया मेरी गलती।
मैंने यहां लिखा है और यह बहुत आसान और सरल लगता है, लेकिन इस त्रुटि को डीबग करने में एक घंटा लग गया, क्योंकि मैं स्ट्रिंग को एक विधि के तर्क के रूप में पास कर रहा था और त्रुटियां अजीब थीं और मैं विधि पर काम करता रहता हूं और समझने की कोशिश करता रहता हूं त्रुटि संदेश। उदाहरण के लिए, संदेश इस प्रकार था, 'नाम' वेरिएबल में निचला() कोई विधि नहीं है।
यदि आप कोष्ठक के बिना अल्पविराम का उपयोग करते हैं, तो पायथन इसे टुपल के रूप में मानता है।
उदाहरण: मेरी गलती = "अजीत कुमार", एक टपल बनाता है ("अजीत कुमार",)।
इसलिए, यदि आप केवल आइटम/तत्व वाला टुपल बनाना चाहते हैं, तो आपको बहुत सावधान रहने की आवश्यकता है। निम्नलिखित उदाहरण में, प्रदर्शित करें कि, पहले उदाहरण में, यहां तक कि एक आइटम कोष्ठक (1) की जोड़ी के भीतर है, पायथन उसे पूर्णांक के रूप में मानता है न कि टुपल के रूप में।
singleitem = (1) print(type(singleitem)) #Output:
इसलिए, किसी एकल आइटम के साथ टुपल बनाने के लिए, आपको निम्न प्रकार से अनुवर्ती अल्पविराम का उपयोग करना होगा:
singleitemtuple = (1,) print(singleitemtuple) #output: (1,) print(type(singleitemtuple)) #output:
और, मुझे लगता है, यही कारण है कि जब स्ट्रिंग में अनुगामी अल्पविराम होता है तो पायथन उसे टुपल के रूप में लेता है और वेरिएबल को स्ट्रिंग के रूप में नहीं बल्कि टुपल के रूप में बनाता है।
हालाँकि, पायथन दस्तावेज़ में इसका स्पष्ट रूप से उल्लेख किया गया है और यह मेरी गलती या मेरी लापरवाही थी कि मैंने इस पर ध्यान नहीं दिया और प्रशिक्षण अल्पविराम के साथ एकल आइटम के लिए भी टुपल बनाने के लिए हमेशा () का उपयोग करता रहा हूँ। स्रोत
वैसे भी, इससे मुझे कुछ नई सीख मिली और () का उपयोग किए बिना एकल आइटम, या अधिक आइटम के साथ टुपल बनाने का शॉर्टकट मिला। हां, मैं टपल बनाने के लिए और अधिक आइटमों के साथ "ट्रेलिंग कॉमा" का उपयोग करने का प्रयास करने लगा और यह काम कर गया। उदाहरण:
mylearning = "Ajit Kumar","April","python", print(mylearning) #output: ('Ajit Kumar', 'April', 'python') print(type(mymistake)) #output:
सप्ताहांत में बहुत कुछ सीखने को मिला। मुझे आशा है, यह आपके लिए उपयोगी होगा. अपनी चर्चा और सुझाव कमेंट में डालें। मुझे पायथन शॉर्टकट्स और आउट-ऑफ़-बॉक्स सुविधाओं के बारे में सुनना अच्छा लगता है।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3