पाइथन स्ट्रिंग में सबस्ट्रिंग की उपस्थिति जांचने के कई कुशल तरीके प्रदान करता है। यह लेख तीन सामान्य विधियों का पता लगाता है: in
ऑपरेटर, str.find()
विधि और str.index()
विधि, उनकी कार्यक्षमता की तुलना करता है और आपकी विशिष्ट आवश्यकताओं के लिए सर्वोत्तम दृष्टिकोण चुनने में आपकी सहायता करता है।
विषयवस्तु की तालिका
in
ऑपरेटर
सबस्ट्रिंग के अस्तित्व की जाँच के लिए in
ऑपरेटर सबसे सरल और सबसे पठनीय समाधान प्रदान करता है। यदि सबस्ट्रिंग मिल जाता है तो यह True
देता है, और अन्यथा False
देता है। यह आदर्श है जब आपको केवल यह जानने की आवश्यकता होती है कि कोई सबस्ट्रिंग मौजूद है या नहीं, उसकी स्थिति नहीं।
main_string = "This is a sample string."
substring = "sample"
if substring in main_string:
print(f"सबस्ट्रिंग '{substring}' स्ट्रिंग में मौजूद है।")
else:
print(f"सबस्ट्रिंग '{substring}' स्ट्रिंग में मौजूद नहीं है।")
str.find()
विधि
str.find()
विधि एक अधिक विस्तृत दृष्टिकोण प्रदान करती है। यदि सबस्ट्रिंग मिल जाता है तो यह सबस्ट्रिंग के पहले प्रकटन के शुरुआती इंडेक्स को लौटाता है; अन्यथा, यह -1 लौटाता है। यह आपको सबस्ट्रिंग की उपस्थिति की जांच करने और उसके स्थान का निर्धारण करने की अनुमति देता है। यह केस-संवेदनशील भी है।
main_string = "This is a sample string."
substring = "sample"
index = main_string.find(substring)
if index != -1:
print(f"सबस्ट्रिंग '{substring}' इंडेक्स {index} पर पाया गया।")
else:
print(f"सबस्ट्रिंग '{substring}' स्ट्रिंग में मौजूद नहीं है।")
str.index()
विधि
str.find()
के समान, str.index()
सबस्ट्रिंग के शुरुआती इंडेक्स को लौटाता है। हालाँकि, यदि सबस्ट्रिंग नहीं मिलता है, तो यह ValueError
अपवाद उठाता है। यह सरल उपस्थिति जांच के लिए कम उपयुक्त बनाता है जब तक कि आप सुनिश्चित न हों कि सबस्ट्रिंग मौजूद है और आप संभावित त्रुटि को स्पष्ट रूप से संभालना चाहते हैं।
main_string = "This is a sample string."
substring = "sample"
try:
index = main_string.index(substring)
print(f"सबस्ट्रिंग '{substring}' इंडेक्स {index} पर पाया गया।")
except ValueError:
print(f"सबस्ट्रिंग '{substring}' स्ट्रिंग में मौजूद नहीं है।")
सही विधि चुनना
इष्टतम विधि आपकी विशिष्ट आवश्यकताओं पर निर्भर करती है:
- सरल उपस्थिति जांच के लिए,
in
ऑपरेटर सबसे कुशल और पठनीय है। - सबस्ट्रिंग के स्थान को खोजने और उसकी संभावित अनुपस्थिति को शालीनतापूर्वक संभालने के लिए,
str.find()
को प्राथमिकता दी जाती है। str.index()
का उपयोग केवल तभी करें जब आप सुनिश्चित हों कि सबस्ट्रिंग मौजूद है और आपकोValueError
अपवाद को संभालने की आवश्यकता है। अन्यथा यह अनावश्यक जटिलता जोड़ता है।
याद रखें कि तीनों विधियाँ केस-संवेदनशील हैं। केस-असंवेदनशील खोजों के लिए, जाँच करने से पहले मुख्य स्ट्रिंग और सबस्ट्रिंग दोनों पर .lower()
विधि का उपयोग करने पर विचार करें।