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

पायथन स्ट्रिंग्स - बेसिक स्ट्रिंग ऑपरेशंस का अवलोकन

स्ट्रिंग्स पायथन में बुनियादी डेटा प्रकारों में से एक है। पायथन स्ट्रिंग्स अक्षरों, अंकों और अन्य विशेष वर्णों से बने वर्णों की संख्या का एक संयोजन है। इस ट्यूटोरियल में, आप सीखेंगे कि विभिन्न परिदृश्यों में उन्हें कैसे बनाना, हेरफेर करना और उनका उपयोग करना है।

पायथन में नई स्ट्रिंग बनाएं

एक नया पायथन स्ट्रिंग बनाने के लिए, आपको केवल एकल या दोहरे उद्धरण चिह्नों से घिरे वर्णों का एक क्रम घोषित करना होगा। तिहरे उद्धरण चिह्नों का उपयोग बहु-पंक्ति-लंबी स्ट्रिंग्स के लिए भी किया जाता है।

double_quotes = "My name is John!"

single_quotes = 'My name is John!'

multi_line_string = '''1. My name is John!
                       2. I am a programmer'''

स्ट्रिंग इंडेक्सिंग

पायथन स्ट्रिंग में प्रत्येक वर्ण में एक पूर्णांक अनुक्रमणिका होती है। अनुक्रमण पहले वर्ण पर 0 से शुरू होता है और स्ट्रिंग के साथ वृद्धि करता है। आप उस वर्ण को स्ट्रिंग से पुनः प्राप्त करने के लिए किसी व्यक्तिगत वर्ण की अनुक्रमणिका का उपयोग कर सकते हैं जैसे निम्न उदाहरण दिखाता है।

myPet = "Dog not a cat"

myPet[0]  # 'D'
myPet[5]  # 'o'
myPet[7]  # ' '
myPet[12] # 't'
# myPet[15] # IndexError

अंतिम वर्ण की अनुक्रमणिका से परे किसी वर्ण तक पहुँचने का प्रयास करने से IndexError . का परिणाम होता है ।

आप नकारात्मक अनुक्रमणिका का उपयोग करके स्ट्रिंग में किसी वर्ण तक पहुंच सकते हैं। इस मामले में, स्ट्रिंग के अंतिम वर्ण पर अनुक्रमण -1 से शुरू होता है, और जैसे-जैसे आप पीछे जाते हैं, नकारात्मक रूप से बढ़ता है।

myPet = "Dog not a cat"

myPet[-1] # 't'
myPet[-6] # ' '
myPet[-8] # 'o'
myPet[-13] # 'D'

स्ट्रिंग स्लाइसिंग

स्लाइसिंग एक स्ट्रिंग से एक सबस्ट्रिंग (स्ट्रिंग का एक हिस्सा) निकालने की विधि है। यह कार्य स्ट्रिंग अनुक्रमण की सहायता से प्राप्त किया जाता है।

myPet = "Dog not a cat"

myPet[5:7] # 'ot'
myPet[1:12] # 'og not a ca'

यहां, दो सूचकांक एक कोलन द्वारा अलग किए गए हैं, पहला सूचकांक इंगित करता है कि कहां से टुकड़ा करना शुरू करना है और दूसरा सूचकांक इंगित करता है कि कहां रुकना है। परिणामी सबस्ट्रिंग में शुरुआती इंडेक्स से लेकर एंडिंग इंडेक्स से पहले के कैरेक्टर तक के कैरेक्टर शामिल होते हैं, एंडिंग इंडेक्स के कैरेक्टर को सबस्ट्रिंग में शामिल नहीं किया जाता है।

यदि आप प्रारंभिक अनुक्रमणिका प्रदान नहीं करते हैं, तो स्लाइसिंग स्ट्रिंग के पहले वर्ण से शुरू होती है। यदि आप अंतिम अनुक्रमणिका प्रदान नहीं करते हैं, तो परिणामी सबस्ट्रिंग में इसे शामिल करते हुए अंतिम वर्ण पर स्लाइसिंग समाप्त होती है।

myPet = "Dog not a cat"

myPet[:7] # 'Dog not'
myPet[10:] # 'cat'
myPet[:] # 'Dog not a cat'

आप नकारात्मक सूचकांकों को स्लाइसिंग इंडेक्स के रूप में भी प्रदान कर सकते हैं।

myPet = "Dog not a cat"

myPet[10:-1] # 'ca'

एक स्ट्रिंग की लंबाई

अंतर्निहित पायथन विधि len() एक स्ट्रिंग की लंबाई को आउटपुट करता है।

myPet = "Dog not a cat"
len(myPet) # 13

एक स्ट्रिंग के माध्यम से पुनरावृति करें

आप एक स्ट्रिंग में प्रत्येक वर्ण के माध्यम से for . का उपयोग करके पुनरावृति कर सकते हैं लूप।

उदाहरण:

name = "John"
for char in name:
    print(char)
# 'J', 'o', 'h', 'n'

स्ट्रिंग संयोजन

स्ट्रिंग कॉन्सटेनेशन एक स्ट्रिंग बनाने के लिए दो या दो से अधिक स्ट्रिंग्स का जुड़ना है। पायथन में, स्ट्रिंग्स को जोड़ने के कई तरीके हैं।

एक + . का उपयोग कर रहा है ऑपरेटर।

str1 = 'Hello'
str2 = 'World'
concat_str = str1 + str2 # 'HelloWorld'
concat_str = str1 + ' ' + str2 # 'Hello World'

आप * . का उपयोग कर सकते हैं एक स्ट्रिंग को कितनी भी बार खुद से जोड़ने के लिए ऑपरेटर।

concat_str = str1*3 # 'HelloHelloHello'

स्ट्रिंग्स को जोड़ने का दूसरा तरीका है join() विधि।

बिल्ट-इन join() एक सामान्य विभाजक का उपयोग करके स्ट्रिंग्स की एक सरणी को संयोजित करने के लिए विधि का उपयोग किया जाता है।

arr = [str1, str2]
concat_str = (' ').join(arr) # 'Hello World'
concat_str = (',').join(arr) # 'Hello,World'

उपरोक्त कोड में, पहला join() विधि सरणी में प्रत्येक शब्द के बीच एक सफेद स्थान जोड़ती है।

दूसरा join() विधि सरणी में प्रत्येक शब्द के बीच अल्पविराम सम्मिलित करती है।

स्ट्रिंग और Int Concatenation

पायथन में, हम एक स्ट्रिंग को एक पूर्णांक में भी जोड़ सकते हैं लेकिन + . के साथ नहीं ऑपरेटर। यदि हम निम्नलिखित कोड का उपयोग करने का प्रयास करते हैं:

name = "John"
age = 35

print(a + b)

हमें मिलेगा:

Traceback (most recent call last):
  File "concat.py", line 5, in <module>
    print(a + b)
TypeError: can only concatenate str (not "int") to str
नोट:आप + . का उपयोग करके एक स्ट्रिंग और एक पूर्णांक को संयोजित नहीं कर सकते हैं ऑपरेटर।

इस त्रुटि से बचने के लिए, हम str() . का उपयोग कर सकते हैं पूर्णांक को स्ट्रिंग में बदलने की विधि, उदाहरण के लिए:

name = "John "
age = "35"

print(a + str(b)) #John 35

स्ट्रिंग को कैसे विभाजित करें

बिल्ट-इन split() एक स्ट्रिंग को स्ट्रिंग्स की एक सरणी में विभाजित करने के लिए विधि का उपयोग किया जाता है।

string = "My name is John"
split_arr = string.split(' ') # ['My', 'name', 'is', 'John']

We can also split a string using a separator:

string = "John, Rose, Jack, Mary"
split_arr = string.split(', ') # ['John', 'Rose', 'Jack', 'Mary']

स्ट्रिप - व्हाइट स्पेस निकालें

strip() , एक स्ट्रिंग की शुरुआत और अंत से सफेद रिक्त स्थान को हटाने के लिए अंतर्निहित स्ट्रिंग विधि का उपयोग किया जाता है।

string = "    Hello,    World    "
stripper_str = string.strip() # 'Hello,    World'

जैसा कि आप देख सकते हैं, strip() सफेद रिक्त स्थान को नहीं हटाता है जो अन्य वर्णों के बीच में हैं लेकिन केवल दो सिरों पर हैं।

strip() . के दो प्रकार हैं मेथड, लेफ्ट स्ट्रिप और राइट स्ट्रिप:

  • lstrip()
  • rstrip()

ये विधियाँ क्रमशः स्ट्रिंग के बाईं ओर और दाईं ओर सफ़ेद रिक्त स्थान को हटाती हैं।

उदाहरण:

lsplit_str = string.lstrip() # 'Hello,    World    '
rsplit_str = string.rstrip() # '    Hello,    World'

उपयोगकर्ता इनपुट पढ़ते समय स्ट्रिप विधियां विशेष रूप से उपयोगी होती हैं, जहां उपयोगकर्ताओं द्वारा अतिरिक्त सफेद रिक्त स्थान पारित किए जा सकते हैं।

स्ट्रिंग को फ़ॉर्मेट करना

पायथन का format() एक स्ट्रिंग को प्रारूपित करने के लिए विधि का उपयोग किया जाता है। घुंघराले ब्रेसिज़ {} स्ट्रिंग के अंदर उपयोग किया जाता है जिसे उस हिस्से के लिए प्लेसहोल्डर के रूप में स्वरूपित करने की आवश्यकता होती है जिसे format() को दिए गए तर्कों द्वारा प्रतिस्थापित करने की आवश्यकता होती है। विधि।

उदाहरण:

"Hello, {}".format('John') # 'Hello, John'

उपरोक्त उदाहरण में {} स्वरूपित स्ट्रिंग में 'जॉन' द्वारा प्रतिस्थापित किया जाता है।

आप फ़ॉर्मेट करने के लिए स्ट्रिंग के अंदर एक से अधिक घुंघराले ब्रेसिज़ का उपयोग कर सकते हैं। उन्हें format() . को दिए गए तर्कों से बदल दिया जाता है विधि या तो दिए गए क्रम में (यदि घुंघराले ब्रेसिज़ के अंदर कोई स्थितीय सूचकांक का उल्लेख नहीं किया गया है) या स्थितीय क्रम।

उदाहरण:

"I have a {}, {}, and a {}".format('dog', 'cat', 'rabbit') # 'I have a dog, cat, and a rabbit'
"I have a {1}, {0}, and a {2}".format('dog', 'cat', 'rabbit') # 'I have a cat, dog, and a rabbit'

सूचकांकों का उपयोग करने के बजाय, आप format() . को कीवर्ड तर्क प्रदान कर सकते हैं विधि ताकि उन खोजशब्दों का उपयोग घुंघराले ब्रेसिज़ के अंदर किया जा सके।

उदाहरण:

print("{friend} is my friend and {enemy} is my enemy".format(friend="John", enemy="Jack"))
# 'John is my friend and Jack is my enemy'

format() विधि काफी बहुमुखी है क्योंकि इसका उपयोग कई मामलों में किया जा सकता है।

यहाँ format() . के कुछ अन्य अनुप्रयोग दिए गए हैं विधि:

arr = [3, 5]
'I have {0[0]} dogs and {0[1]} cats'.format(arr)
# 'I have 3 dogs and 4 cats'

#convert numbers to different bases
"int: {0:d};  hex: {0:x};  oct: {0:o};  bin: {0:b}".format(42)
# 'int: 42;  hex: 2a;  oct: 52;  bin: 101010'

स्ट्रिंग को लोअरकेस में बदलें

Python के lower() का इस्तेमाल करना विधि, आप एक स्ट्रिंग को लोअरकेस में बदल सकते हैं।

उदाहरण:

string = "Hello, World!"
string.lower() # 'hello, world!'

एक स्ट्रिंग को अपरकेस में बदलें

इसी तरह, Python के upper() . का उपयोग करके विधि, आप एक स्ट्रिंग को अपरकेस में बदल सकते हैं।

उदाहरण:

string = "Hello, World!"
string.upper() # 'HELLO, WORLD!'

निष्कर्ष

मुझे उम्मीद है कि इस ट्यूटोरियल की मदद से, आप अब पायथन स्ट्रिंग्स और स्ट्रिंग ऑपरेशन के लिए विभिन्न तरीकों का उपयोग करने के तरीके से परिचित हो गए हैं।

संदर्भ:पायथन का स्ट्रिंग दस्तावेज़


  1. स्ट्रिंग की जाँच करने के लिए प्रोग्राम पायथन में स्ट्रिंग को दोहरा रहा है या नहीं

    मान लीजिए हमारे पास एक स्ट्रिंग है, हमें यह जांचना है कि यह दोहराई जाने वाली स्ट्रिंग है या नहीं। इसलिए, यदि इनपुट स्ट्रिंग =helloworldhelloworld जैसा है, तो आउटपुट सही होगा इसे हल करने के लिए, हम इन चरणों का पालन करेंगे - n :=आकार का एक फ़ंक्शन को परिभाषित करें findFactors() । इसमें n . लगेगा f

  1. पायथन स्ट्रिंग की अधिकतम लंबाई क्या है?

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

  1. पायथन में सबसे कुशल स्ट्रिंग संयोजन विधि क्या है?

    एक स्ट्रिंग को एक स्ट्रिंग वेरिएबल में जोड़ने का सबसे अच्छा तरीका + या +=का उपयोग करना है। ऐसा इसलिए है क्योंकि यह पठनीय और तेज़ है। वे भी उतने ही तेज हैं। इसके अलावा, यदि आप 2 स्ट्रिंग्स के साथ काम कर रहे हैं, तो एपेंड () का भी उपयोग किया जा सकता है। यदि आप स्ट्रिंग्स की एक सूची को जोड़ रहे हैं, त