List Slicing
List Slicing అంటే ఏమిటి?
ఒక Listలోని itemsలో కొంత భాగాన్ని తీసుకోవడాన్ని List Slicing అంటారు. ఒక itemను మాత్రమే తీసుకునే indexingకు భిన్నంగా, slicing ద్వారా వరుసగా ఉన్న అనేక itemsను ఒకేసారి తీసుకోవచ్చు.
ఎందుకు ఉపయోగిస్తాము?
పెద్ద Listలో మనకు అవసరమైన భాగాన్ని మాత్రమే తీసుకోవడానికి slicing ఉపయోగిస్తాము. ఉదాహరణకు, మొదటి మూడు marks, మధ్యలోని కొన్ని names లేదా ప్రతి రెండవ itemను తీసుకోవచ్చు.
Syntax
list_name[start:stop:step]
- start: slicing ప్రారంభమయ్యే index. ఇది చేర్చబడుతుంది.
- stop: slicing ఆగే index. ఇది చేర్చబడదు.
- step: ఎన్ని steps తర్వాత item తీసుకోవాలో చెబుతుంది. ఇది optional.
numbers[1:4] అంటే index 1 నుంచి index 4కు ముందు వరకు items తీసుకోవడం. కాబట్టి indexes 1, 2, 3 మాత్రమే వస్తాయి.
Start మరియు Stop వదిలివేయడం
numbers[:3]అంటే మొదటి index నుంచి index 3కు ముందు వరకు.numbers[2:]అంటే index 2 నుంచి చివరి item వరకు.numbers[:]అంటే మొత్తం Listను తీసుకోవడం.
Step ఉపయోగించడం
numbers[::2] ద్వారా ప్రతి రెండవ itemను తీసుకోవచ్చు. numbers[::-1] ద్వారా Listను reverse orderలో తీసుకోవచ్చు.
List slicing సాధారణంగా కొత్త Listను ఇస్తుంది. Slicing చేసినప్పుడు అసలు List మారదు.
Simple Explanation
List slicingను ఒక పెద్ద Listను కత్తిరించి మనకు కావలసిన భాగాన్ని తీసుకోవడం లాగా ఊహించండి. Syntaxలో start చేర్చబడుతుంది, కానీ stop index చేర్చబడదు. ఉదాహరణకు, items[1:4]లో 1, 2, 3 indexes వస్తాయి; 4వ index రాదు.
మొదటి మూడు items కోసం items[:3], చివరి భాగం కోసం items[2:], reverse కోసం items[::-1] ఉపయోగించవచ్చు.
Real-Life Example
ఒక పుస్తకంలోని chapters Listగా ఉన్నాయని అనుకోండి. మొత్తం పుస్తకం కాకుండా chapters 2 నుంచి 4 వరకు మాత్రమే చదవాలంటే slicing ఉపయోగించవచ్చు. అలాగే, ఒక shopping listలో మొదటి మూడు itemsను మాత్రమే తీసుకోవడం కూడా slicingకు ఉదాహరణ.
Code Examples
Different List Slicing Examples
numbers = [10, 20, 30, 40, 50, 60]
first_three = numbers[:3]
middle = numbers[1:5]
every_second = numbers[::2]
reverse = numbers[::-1]
print(first_three)
print(middle)
print(every_second)
print(reverse)
ఈ codeలో ఒక List నుంచి మొదటి మూడు items, మధ్యలోని items, ప్రతి రెండవ item మరియు reverse orderలోని itemsను slicing ద్వారా తీసుకుంటున్నాము. ప్రతి slicing result ఒక కొత్త Listగా వస్తుంది.
[10, 20, 30] [20, 30, 40, 50] [10, 30, 50] [60, 50, 40, 30, 20, 10]
Line-by-Line Explanation
ఈ lineలో numbers అనే పేరుతో ఒక List సృష్టించబడుతుంది. Python ఈ Listలో ఆరు integer valuesను నిల్వ చేస్తుంది.
start index ఇవ్వలేదు కాబట్టి List ప్రారంభం నుంచి slicing మొదలవుతుంది. stop index 3 కాబట్టి indexes 0, 1, 2 వస్తాయి. ఈ మూడు items first_threeలో నిల్వ అవుతాయి.
ఈ line index 1 నుంచి ప్రారంభమై index 5కు ముందు ఆగుతుంది. అందువల్ల indexes 1, 2, 3, 4లోని values middleలోకి వస్తాయి.
start మరియు stop ఇవ్వలేదు కాబట్టి మొత్తం Listను పరిశీలిస్తుంది. step 2 కావడంతో ప్రతి రెండవ indexలోని item తీసుకుంటుంది.
step విలువ -1 కావడంతో Listను చివరి item నుంచి మొదటి item వైపు reverse orderలో తీసుకుంటుంది.
first_threeలోని మొదటి మూడు itemsను screenపై చూపిస్తుంది.
middleలో నిల్వైన sliced Listను screenపై చూపిస్తుంది.
ప్రతి రెండవ itemతో తయారైన Listను screenపై చూపిస్తుంది.
reverse orderలో ఉన్న Listను screenపై చూపిస్తుంది.
Try It
Try this Python code:
colors = ["red", "green", "blue", "yellow", "black"]
selected = colors[1:4]
print(selected)
Practice
Practice: scores = [45, 60, 72, 88, 91, 100] అనే Listలో మొదటి మూడు scoresను slicingతో print చేయండి. తరువాత అదే Listను reverse orderలో print చేయండి.
Hint: మొదటి మూడు items కోసం scores[:3] మరియు reverse కోసం scores[::-1] ఉపయోగించండి.
Practice: days = [“Mon”, “Tue”, “Wed”, “Thu”, “Fri”, “Sat”, “Sun”] అనే Listలో weekdays మాత్రమే తీసుకోవడానికి slicing రాయండి.
Hint: మొదటి ఐదు itemsను తీసుకోవాలి. stop index 5గా ఉంచండి.
Common Mistakes
stop index ఎప్పుడూ చేర్చబడదు. numbers[1:4]లో indexes 1, 2, 3 మాత్రమే వస్తాయి.
మొత్తం List కోసం numbers[:] అని సులభంగా రాయవచ్చు.
reverse order కోసం step తప్పనిసరిగా -1గా ఉండాలి.
numbers[2:] index 2 నుంచి చివరి వరకు తీసుకుంటుంది. numbers[:2] ప్రారంభం నుంచి index 2కు ముందు వరకు మాత్రమే తీసుకుంటుంది.
Slicing సాధారణంగా కొత్త Listను ఇస్తుంది. అసలు Listను మార్చకుండా resultను వేరే variableలో నిల్వ చేయవచ్చు.
Interview Questions
Pythonలో List slicing అంటే ఏమిటి?
Answer: Listలోని ఒక భాగాన్ని తీసుకోవడాన్ని List slicing అంటారు. దీనికి సాధారణ syntax list_name[start:stop:step].
numbers[1:4] ఏ indexesను తీసుకుంటుంది?
Answer: ఇది indexes 1, 2, 3ను తీసుకుంటుంది. stop index 4 చేర్చబడదు.
Listలోని మొదటి మూడు itemsను ఎలా తీసుకుంటారు?
Answer: list_name[:3] ఉపయోగిస్తారు.
Listను reverse orderలో slicingతో ఎలా తీసుకుంటారు?
Answer: list_name[::-1] ఉపయోగిస్తారు.
Exam Questions
items = [1, 2, 3, 4, 5] అయితే items[1:4] output ఏమిటి?
Answer:
[2, 3, 4]
items = [10, 20, 30, 40, 50] అయితే items[:2] output ఏమిటి?
Answer:
[10, 20]
items = [1, 2, 3, 4, 5, 6] అయితే items[::2] output ఏమిటి?
Answer:
[1, 3, 5]
Listలో చివరి రెండు itemsను slicingతో ఎలా తీసుకోవచ్చు?
Answer:
list_name[-2:] ఉపయోగించవచ్చు.
Quick Revision
- List slicing syntax: list_name[start:stop:step]
- start index చేర్చబడుతుంది.
- stop index చేర్చబడదు.
- list_name[:3] మొదటి మూడు itemsను తీసుకుంటుంది.
- list_name[2:] index 2 నుంచి చివరి వరకు itemsను తీసుకుంటుంది.
- list_name[::2] ప్రతి రెండవ itemను తీసుకుంటుంది.
- list_name[::-1] Listను reverse orderలో తీసుకుంటుంది.
- Slicing సాధారణంగా కొత్త Listను ఇస్తుంది; అసలు List మారదు.
