मास्टरिंग पायथन स्लाइस नोटेशन
Python मध्ये स्लाइसिंग हे एक शक्तिशाली वैशिष्ट्य आहे जे तुम्हाला सूची, ट्यूपल किंवा स्ट्रिंगमधील घटकांच्या उपसंचामध्ये प्रवेश करण्यास अनुमती देते. तुम्ही a[:] सारखे मूलभूत स्लाइस वापरत असाल किंवा a[x:y:z] सारखे अधिक प्रगत, स्लाइस कसे कार्य करतात हे समजून घेणे तुमची कोडिंग कार्यक्षमता मोठ्या प्रमाणात वाढवू शकते.
हा लेख पायथनमधील स्लाइस नोटेशनच्या मेकॅनिक्सचा शोध घेईल, स्लाइस वरच्या-बाउंड अनन्य का आहेत हे स्पष्ट करेल, प्रत्येक Nth आयटमसह नवीन याद्या कशा तयार करायच्या हे दर्शवेल आणि सूची स्लाइससह असाइनमेंट कसे कार्य करतात हे स्पष्ट करेल. अखेरीस, तुम्हाला पायथनमध्ये स्लाइसिंगची ठोस पकड असेल.
आज्ञा | वर्णन |
---|---|
slice = a[::2] | मूळ सूचीमधील प्रत्येक दुसरा घटक असलेली नवीन सूची तयार करते a. |
slice = a[::-1] | यादी उलट करते अ. |
slice = a[1:7:2] | 2 च्या पायरीसह अनुक्रमणिका 1 ते 6 मधील घटक काढतो. |
slice1 = xs[0:2] | सूची xs मधून अनुक्रमणिका 0 ते 1 मधील घटक काढतो. |
nth_list = a[::3] | मूळ सूचीमधील प्रत्येक तिसरा घटक असलेली नवीन सूची तयार करते a. |
xs[0:2] = ["a", "b"] | अनुक्रमणिका 0 आणि 1 मधील घटकांना xs मध्ये "a" आणि "b" ने बदलते. |
print(slice) | व्हेरिएबल स्लाइसची सामग्री कन्सोलवर आउटपुट करते. |
पायथन स्लाइस नोटेशन एक्सप्लोर करत आहे
वर प्रदान केलेल्या स्क्रिप्ट्स प्रभावीपणे सूची हाताळण्यासाठी पायथनच्या स्लाइस नोटेशनचा वापर करण्याचे विविध मार्ग दाखवतात. पहिली स्क्रिप्ट मूलभूत स्लाइसिंग दर्शवते, जिथे आम्ही सूचीचे उपसंच तयार करतो a वेगवेगळ्या स्लाइस नोटेशन्स वापरून. उदाहरणार्थ, १ अनुक्रमणिका 2 ते 4 मधील घटक काढतो, तर a[:3] पहिले तीन घटक मिळतात. द a[::2] सिंटॅक्स सूचीमधून प्रत्येक दुसरा घटक काढतो, आणि a[::-1] यादी उलट करते. ही स्लाइसिंग तंत्रे लवचिक डेटा एक्सट्रॅक्शन आणि मॅनिपुलेशनसाठी परवानगी देतात, ज्यामुळे मूळ सूचीमध्ये बदल न करता डेटाच्या उपसंचांसह कार्य करणे सोपे होते.
दुसरी स्क्रिप्ट स्लाइसिंगमधील अप्पर-बाउंड एक्सक्लुझिव्हिटीची संकल्पना स्पष्ट करते. मध्ये ५, अनुक्रमणिका 0 आणि 1 मधील घटक समाविष्ट केले आहेत, परंतु अनुक्रमणिका 2 वगळले आहे. हे वर्तन पायथनच्या शून्य-आधारित अनुक्रमणिकेशी सुसंगत आहे आणि एक-एक त्रुटी टाळण्यास मदत करते. तिसरी स्क्रिप्ट मूळ यादीतील प्रत्येक Nth आयटम वापरून नवीन सूची तयार करते a[::3], घटकांचे सॅम्पलिंग किंवा वगळण्यासाठी स्लाइसिंग कसे वापरले जाऊ शकते हे दर्शविते. चौथी स्क्रिप्ट सूचीच्या विशिष्ट स्लाइससाठी नवीन मूल्ये कशी नियुक्त करायची हे दाखवते. वापरून ७, अनुक्रमणिका 0 आणि 1 मधील घटक "a" आणि "b" ने बदलले आहेत. स्लाइसला मूल्ये नियुक्त करण्याची ही क्षमता सूचीचे भाग कार्यक्षमतेने सुधारणे सोपे करते.
पायथनच्या स्लाइस नोटेशनसह कसे कार्य करावे
पायथन स्लाइसिंग उदाहरणे
# Basic slicing
a = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
slice1 = a[2:5] # [2, 3, 4]
slice2 = a[:3] # [0, 1, 2]
slice3 = a[::2] # [0, 2, 4, 6, 8]
slice4 = a[1:7:2] # [1, 3, 5]
slice5 = a[::-1] # [9, 8, 7, 6, 5, 4, 3, 2, 1, 0]
print(slice1)
print(slice2)
print(slice3)
print(slice4)
print(slice5)
पायथन स्लाइसमधील अप्पर-बाउंड एक्सक्लुझिव्हिटी समजून घेणे
पायथन स्लाइस अप्पर-बाउंड स्पष्टीकरण
१
प्रत्येक Nth आयटमसह नवीन सूची तयार करणे
Nth घटकांसाठी पायथन लिस्ट स्लाइसिंग
# Creating a new list with every Nth item
a = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
nth_list = a[::3] # [0, 3, 6, 9]
print(nth_list)
सूची स्लाइससह मूल्ये नियुक्त करणे
पायथन स्लाइस असाइनमेंट
# Assignment with list slices
xs = [10, 20, 30, 40, 50]
xs[0:2] = ["a", "b"] # xs becomes ['a', 'b', 30, 40, 50]
print(xs)
पायथन स्लाइस नोटेशनमध्ये खोलवर जाणे
मूलभूत स्लाइसिंगच्या पलीकडे, विविध डेटा हाताळणी कार्ये हाताळण्यासाठी पायथनचे स्लाइस नोटेशन अधिक प्रगत मार्गांनी लागू केले जाऊ शकते. एक शक्तिशाली पैलू म्हणजे नकारात्मक अनुक्रमणिका, जी तुम्हाला सूचीच्या शेवटी तुकडे करण्याची परवानगी देते. उदाहरणार्थ, a[-3:] सूचीतील शेवटचे तीन घटक पुनर्प्राप्त करते a. सूचीच्या शेवटी घटकांची लांबी जाणून घेतल्याशिवाय प्रवेश करण्यासाठी हे आश्चर्यकारकपणे उपयुक्त ठरू शकते. आणखी एक प्रगत वैशिष्ट्य म्हणजे क्रमवारी किंवा फिल्टरिंग सारख्या इतर सूची ऑपरेशन्ससह स्लाइस एकत्र करणे. आपण वापरून सूचीचा तुकडा क्रमवारी लावू शकता sorted(a[2:5]), जे मूळ सूचीमध्ये बदल न करता अनुक्रमणिका 2 ते 4 मधील घटकांची क्रमवारी केलेली आवृत्ती परत करते.
याव्यतिरिक्त, स्लाइसिंगचा वापर बहुआयामी सूची किंवा सूचीच्या सूचीसह केला जाऊ शकतो. उदाहरणार्थ, जर तुमच्याकडे 2D यादी असेल, तर तुम्ही पंक्ती आणि स्तंभ स्वतंत्रपणे कापू शकता. वापरत आहे matrix[:2] पहिल्या दोन पंक्ती मिळतात, तर [row[:2] for row in matrix] प्रत्येक पंक्तीचे पहिले दोन स्तंभ पुनर्प्राप्त करते. या प्रगत स्लाइसिंग तंत्रे समजून घेतल्याने जटिल डेटा संरचना कार्यक्षमतेने हाताळण्याची तुमची क्षमता लक्षणीयरीत्या वाढू शकते. Python चे स्लाइस नोटेशन हे केवळ सूचीच्या काही भागांमध्ये प्रवेश करण्याचे साधन नाही तर डेटा विश्लेषण आणि हाताळणीसाठी एक शक्तिशाली वैशिष्ट्य देखील आहे.
पायथन स्लाइस नोटेशन बद्दल सामान्य प्रश्न आणि उत्तरे
- पायथनमध्ये बेसिक स्लाइसिंगसाठी सिंटॅक्स काय आहे?
- मूलभूत स्लाइसिंग वाक्यरचना आहे a[start:stop:step], कुठे start सुरुवातीचा निर्देशांक आहे, १५ शेवटचा निर्देशांक आहे (अनन्य), आणि step निर्देशांकांमधील वाढ निर्धारित करते.
- स्लाइसिंग वापरून तुम्ही सूची कशी उलटी करता?
- स्लाइस नोटेशन वापरून तुम्ही सूची उलट करू शकता a[::-1].
- तुम्ही सूचीच्या शेवटच्या घटकात कसे प्रवेश करू शकता?
- आपण वापरून सूचीच्या शेवटच्या घटकामध्ये प्रवेश करू शकता १८.
- काय a[:3] परत?
- हे सूचीतील पहिले तीन घटक परत करते a.
- स्लाइसिंग वापरून तुम्ही सूचीतील घटक सुधारू शकता का?
- होय, तुम्ही स्लाइससाठी नवीन मूल्ये नियुक्त करू शकता, जसे की २१, जे पहिल्या दोन घटकांना 9 आणि 8 ने बदलते.
- प्रत्येक दुसरा घटक मिळविण्यासाठी तुम्ही सूचीचे तुकडे कसे करता?
- आपण वापरून प्रत्येक दुसरा घटक मिळवू शकता a[::2].
- तुम्ही स्लाइसमध्ये स्टार्ट इंडेक्स वगळल्यास काय होईल?
- प्रारंभ निर्देशांक वगळल्यास, स्लाइस सूचीच्या सुरुवातीपासून सुरू होते, जसे की मध्ये a[:3].
- विशिष्ट स्तंभ मिळविण्यासाठी तुम्ही 2D सूचीचे तुकडे कसे करता?
- तुम्ही सूची आकलन वापरून 2D सूचीमध्ये स्तंभांचे तुकडे करू शकता, जसे [row[:2] for row in matrix] पहिले दोन स्तंभ मिळविण्यासाठी.
- स्लाइसमध्ये नकारात्मक अनुक्रमणिका म्हणजे काय?
- निगेटिव्ह इंडेक्सिंग म्हणजे सूचीच्या शेवटी मोजणे, म्हणून a[-3:] शेवटचे तीन घटक मिळतात.
पायथन स्लाइसिंगवरील अंतिम विचार
पायथनचे स्लाइस नोटेशन हे एक अष्टपैलू साधन आहे जे डेटा हाताळणी कार्ये सुलभ करते. तुम्ही सूची उलट करत असाल, विशिष्ट घटक काढत असाल किंवा यादीतील सामग्री बदलत असाल, स्लाइसिंग या ऑपरेशन्स सरळ आणि कार्यक्षम बनवते. नकारात्मक अनुक्रमणिका आणि बहुआयामी स्लाइसिंग सारख्या प्रगत तंत्रांसह स्लाइसिंगच्या बारकावे समजून घेतल्याने, तुमचे प्रोग्रामिंग कौशल्य आणि कार्यक्षमता मोठ्या प्रमाणात वाढू शकते.