Slicing in Python in Hindi – Python में Slicing क्या है?
Table of Contents
Slicing in Hindi – स्लाइसिंग क्या है?
Python में जब भी हमें किसी sequence (जैसे List, Tuple या String) का पूरा data नहीं, बल्कि सिर्फ उसका एक particular हिस्सा निकालना हो, तो उसके लिए Slicing का इस्तेमाल किया जाता है।
आसान भाषा में कहें तो, Slicing एक ऐसी technique है जिसकी मदद से किसी sequence में से शुरुआत और आखिर की position बताकर, बीच का कोई भी हिस्सा (sub-part) निकाला जा सकता है, बिना किसी loop या manual coding के।
Slicing को
[]square brackets के अंदर colon:की मदद से लिखा जाता है, जैसेsequence[start:stop], जहाँstartयह बताता है कि कहाँ से element लेना शुरू करना है, औरstopयह बताता है कि किस index तक (उससे पहले तक) elements लेने हैं।Slicing सिर्फ List तक सीमित नहीं है — इसे Tuple और String, दोनों पर भी बिल्कुल उसी तरीके से इस्तेमाल किया जा सकता है, क्योंकि ये तीनों ही Python में "sequence" data types माने जाते हैं।
रोज़-मर्रा की life से example लें तो, Slicing बिल्कुल वैसा ही है जैसे किसी लंबी किताब में से आप सिर्फ chapter 3 से chapter 5 तक के पन्ने अलग निकाल लें, बिना पूरी किताब को दोबारा लिखे। Python में भी slicing किसी sequence का ठीक ऐसा ही एक हिस्सा निकाल देती है।
Exam की भाषा में इसकी definition याद रखनी हो तो: "Slicing is a technique used to extract a portion (sub-sequence) of elements from a sequence such as a list, tuple, or string, using a specified start, stop, and step index."
यह समझना भी ज़रूरी है कि Slicing हमेशा एक नया sequence return करती है — यह original data को modify नहीं करती (except कुछ खास mutable operations में, जैसे List में slice assignment)।
Characteristics of Slicing in Hindi – स्लाइसिंग की विशेषताएं
1. सभी Sequence Types पर काम करता है
Slicing को List, Tuple और String, तीनों पर इस्तेमाल किया जा सकता है, क्योंकि ये सभी ordered sequences होते हैं।
2. हमेशा एक नया Sequence Return करता है
Slicing original data को छेड़ती नहीं है, बल्कि एक बिल्कुल नया sub-sequence बनाकर return करती है।
3. Negative Indexing को भी Support करता है
Slicing सिर्फ positive index ही नहीं, बल्कि negative index (जैसे -1, -2) के साथ भी काम करती है, जिससे आखिर से elements निकालना आसान हो जाता है।
4. Stop Index हमेशा Exclude होता है
Slicing में stop index पर मौजूद element कभी शामिल नहीं होता — यानी list[2:5] में index 5 वाला element नहीं आएगा, सिर्फ 2, 3, 4 वाले elements आएँगे।
5. Start, Stop और Step Optional होते हैं
अगर start ना दिया जाए तो वो 0 (शुरुआत) मान लिया जाता है, अगर stop ना दिया जाए तो वो आखिर तक मान लिया जाता है, और step ना दिया जाए तो default 1 होता है।
6. Index Range से बाहर जाने पर Error नहीं आता
अगर slicing में दी गई range sequence की length से ज़्यादा हो, तो भी Python error नहीं देता, बस जितने elements available होते हैं उतने ही return कर देता है।
7. Negative Step से Reverse भी हो सकता है
अगर step की value negative दी जाए, तो sequence को reverse order में भी access किया जा सकता है, जैसे list[::-1]।
Syntax of Slicing in Hindi – स्लाइसिंग का Syntax
Slicing का general syntax कुछ इस तरह होता है:
sequence[start:stop:step]
start: वो index जहाँ से slicing शुरू होगी (शामिल किया जाता है)। अगर ना दें, तो शुरुआत से मान लिया जाता है।
stop: वो index जहाँ तक slicing जाएगी (यह index खुद शामिल नहीं होता)। अगर ना दें, तो आखिर तक मान लिया जाता है।
step: हर बार कितने elements छोड़कर अगला element लेना है। अगर ना दें, तो default value 1 होती है।
यह diagram दिखा रहा है कि "PYTHON" string के हर character का positive index (0 से 5 तक) और negative index (-6 से -1 तक) क्या होता है, जिसकी मदद से slicing की range समझना आसान हो जाता है।
Types of Slicing in Hindi – स्लाइसिंग के प्रकार
1. List Slicing
List में slicing की मदद से किसी particular range के elements को निकाला जा सकता है:
numbers = [10, 20, 30, 40, 50, 60]
print(numbers[1:4]) # Output: [20, 30, 40]
print(numbers[:3]) # Output: [10, 20, 30]
print(numbers[3:]) # Output: [40, 50, 60]
print(numbers[:]) # Output: [10, 20, 30, 40, 50, 60]
2. Tuple Slicing
Tuple पर slicing बिल्कुल List जैसे ही काम करती है, बस return होने वाला result भी एक Tuple ही रहता है:
colors = ("red", "green", "blue", "yellow", "black")
print(colors[1:3]) # Output: ('green', 'blue')
print(colors[-2:]) # Output: ('yellow', 'black')
3. String Slicing
String में हर character की एक index होती है, इसलिए slicing की मदद से किसी particular हिस्से को आसानी से निकाला जा सकता है:
word = "PYTHON"
print(word[0:3]) # Output: PYT
print(word[2:]) # Output: THON
print(word[:4]) # Output: PYTH
4. Negative Index Slicing
जब हमें किसी sequence के आखिर से elements निकालने हों, तो negative index वाली slicing बहुत काम आती है, क्योंकि इसमें हमें sequence की length पहले से याद रखने की ज़रूरत नहीं पड़ती:
word = "PYTHON"
print(word[-3:]) # Output: HON
print(word[:-2]) # Output: PYTH
print(word[-4:-1]) # Output: THO
numbers = [10, 20, 30, 40, 50]
print(numbers[-3:]) # Output: [30, 40, 50]
यहाँ यह याद रखना ज़रूरी है कि negative indexing हमेशा -1 से शुरू होती है, जो sequence का सबसे आखिरी element होता है, और वहाँ से पीछे की तरफ गिनती चलती है।
Step Parameter in Slicing in Hindi – स्टेप पैरामीटर
Slicing के syntax में तीसरा parameter step यह बताता है कि elements लेते समय हर बार कितने elements छोड़कर अगला element उठाना है। Default रूप से इसकी value 1 होती है, यानी लगातार सभी elements उठाए जाते हैं।
यह diagram दिखा रहा है कि जब step की value 2 दी जाती है, तो हर बार एक element छोड़कर अगला element लिया जाता है, और नीचे यह भी दिखाया गया है कि negative step पूरी sequence को reverse order में कैसे लौटा देता है।
Code के through कुछ और examples देखें:
numbers = [10, 20, 30, 40, 50, 60]
print(numbers[::2]) # Output: [10, 30, 50]
print(numbers[1::2]) # Output: [20, 40, 60]
print(numbers[::-1]) # Output: [60, 50, 40, 30, 20, 10]
print(numbers[::-2]) # Output: [60, 40, 20]
word = "PYTHON"
print(word[::-1]) # Output: NOHTYP
numbers[::2]— शुरुआत से आखिर तक, हर दूसरा element लेता है।numbers[1::2]— index 1 से शुरू करके, हर दूसरा element लेता है।numbers[::-1]— पूरी sequence को उल्टा (reverse) करके return करता है, जो string को reverse करने का सबसे common तरीका भी माना जाता है।numbers[::-2]— आखिर से शुरू करके, हर दूसरा element लेता है।
Advantages of Slicing in Hindi – स्लाइसिंग के फायदे
बिना किसी loop के, एक ही line में किसी sequence का particular हिस्सा निकाला जा सकता है, जिससे code छोटा और साफ़-सुथरा बनता है।
String को reverse करने जैसे common tasks भी सिर्फ एक line (
[::-1]) में हो जाते हैं।Negative indexing की वजह से sequence की length पहले से जाने बिना भी आखिर के elements निकाले जा सकते हैं।
Slicing List, Tuple और String, तीनों पर एक जैसे तरीके से काम करती है, इसलिए इसे एक बार सीखने के बाद कहीं भी लागू किया जा सकता है।
Index range से बाहर जाने पर भी error नहीं आता, जिससे code ज़्यादा robust बनता है।
Points to Remember in Hindi – ध्यान रखने वाली बातें
Slicing में
stopindex हमेशा exclude होता है — यानी उस index वाला element result में शामिल नहीं होता।अगर
start,stop, औरstepतीनों ना दिए जाएँ (sequence[:]), तो पूरी sequence की एक नई copy मिलती है।Negative step का इस्तेमाल करते समय
startहमेशाstopसे बड़ा होना चाहिए, वरना खाली sequence मिलेगी।Slicing हमेशा एक नया sequence return करती है, इसलिए original data पर उसका कोई असर नहीं पड़ता (List में slice assignment को छोड़कर)।
Slicing को Indexing के साथ confuse नहीं करना चाहिए — Indexing एक single element return करती है, जबकि Slicing हमेशा एक sub-sequence (छोटा collection) return करती है।