Slicing ક્રમ (સૂચી, tuple, સ્ટ્રિંગ)નો ભાગ નીકાળે છે sequence[start:stop:step] વાક્યરચના વાપરીને. તે પાયથોનમાં સતત વપરાતી એક શક્તિશાળી, સંક્ષિપ્ત સુવિધા છે.
મૂળભૂત સ્લાઇસિંગ
nums = [, , , , , ]
nums[:]
nums[:]
nums[:]
nums[:]
મુખ્ય નિયમ: start સમાવેશી છે, stop એક્સક્લુસિવ છે (nums[1:4] સૂચકાંકો 1, 2, 3 આપે છે — 4 નહીં).
nums[-1] # 5 — last element
nums[-2] # 4 — second to last
nums[-3:] # [3, 4, 5] — last three elements
nums[:-1] # [0, 1, 2, 3, 4] — everything except the last
nums[::2] # [0, 2, 4] — every 2nd element
nums[1::2] # [1, 3, 5] — every 2nd, starting at index 1
nums[::-1] # [5, 4, 3, 2, 1, 0] — REVERSE the sequence (a famous idiom)
nums[::-1] ક્રમ પરિવર્તન પાયથોનના સૌથી ઓળખી શકાય તેવા મુહાવરાઓમાંથી એક છે.
s = "Hello"
s[1:4] # "ell"
s[::-1] # "olleH" — reverse a string
s[0] # "H"
nums = [0, 1, 2, 3, 4]
nums[1:3] = [10, 20, 30] # replace a slice (can change length)
# nums → [0, 10, 20, 30, 3, 4]
nums[10:20] # [] — out-of-range slices return empty, don't crash (unlike nums[10])
વ્યક્તિગત-સૂચકાંક ઍક્સેસ માટે અલગ હોય (જે IndexError ફેંકે છે), સ્લાઇસિંગ કૃપાપૂર્વક જે ઉપલબ્ધ છે તે પાછું આપે છે.
સ્લાઇસિંગ એક સર્વવ્યાપી, અલગ પાયથોનિક સુવિધા છે ક્રમને સ્વચ્છ રીતે નીકાળવા, નકલ કરવા અને ઉલટાવવા માટે.
start:stop:step વાક્યરચના (ખાસ કરીને inclusive-start/exclusive-stop), નકારાત્મક સૂચકાંકો (અંતથી ગણતા), રિવર્સ મુહાવરો ([::-1]), અને સ્લાઇસ સુરક્ષિત છે (બહારની-શ્રેણીમાં કોઈ ક્રેશ નહીં) સમજવું તમને સૂચીઓ અને સ્ટ્રિંગ્સને સંક્ષિપ્ત અને સાચી રીતે મેનિપ્યુલેટ કરવા દે છે.
મતલબના ઓપરેશનો માટે શબ્દાધિક લૂપને બદલે છે અને પાયથોન આદર્શવાચક કોડ જુદું દેખાય છે.