Python List Sorting

Python List Sorting అంటే ఏమిటి?

ఒక list లోని items ను ఒక క్రమంలో అమర్చడాన్ని List Sorting అంటారు. సాధారణంగా numbers ను చిన్నది నుండి పెద్దది వరకు, లేదా words ను alphabetical order లో అమర్చడానికి sorting ఉపయోగిస్తాము.

Sorting ఎందుకు ఉపయోగిస్తాము?

Data ను సులభంగా చదవడానికి, search చేయడానికి మరియు compare చేయడానికి sorting ఉపయోగపడుతుంది. ఉదాహరణకు marks list ను ascending order లో అమర్చితే తక్కువ marks నుండి ఎక్కువ marks వరకు చూడవచ్చు.

Python లో sorting ఎలా చేస్తాము?

Python list ను sort చేయడానికి sort() method ఉపయోగించవచ్చు. ఇది అసలు list ను మార్చుతుంది.

అసలు list ను మార్చకుండా sorted list కావాలంటే sorted() function ఉపయోగించాలి. sort() మరియు sorted() రెండూ list ను క్రమంలో అమర్చడానికి ఉపయోగపడతాయి, కానీ వాటి పని విధానం కొద్దిగా భిన్నంగా ఉంటుంది.

Ascending మరియు Descending Order

Default గా sorting ascending order లో జరుగుతుంది. అంటే చిన్నది నుండి పెద్దది వరకు లేదా A నుండి Z వరకు. Descending order కోసం reverse=True ఉపయోగించాలి.

ఎక్కడ ఉపయోగపడుతుంది?

  • Student marks ను క్రమంలో చూపించడానికి
  • Prices ను తక్కువ నుండి ఎక్కువ వరకు అమర్చడానికి
  • Names ను alphabetical order లో చూపించడానికి
  • Reports మరియు rankings తయారు చేయడానికి

Simple Explanation

sort() method list లోని items ను క్రమంలో అమర్చి అదే list ను మార్చుతుంది. ఉదాహరణకు [40, 10, 30] పై sort() ఉపయోగిస్తే list [10, 30, 40] అవుతుంది.

sorted() function కొత్త sorted list ను return చేస్తుంది. అందువల్ల అసలు list అలాగే ఉంటుంది. List ను మార్చడం ఇష్టం లేకపోతే sorted() ఉపయోగించండి.

పెద్దది నుండి చిన్నది వరకు sort చేయాలంటే reverse=True ఇవ్వాలి.

Real-Life Example

ఒక తరగతిలో విద్యార్థుల marks [72, 45, 90, 63] గా ఉన్నాయని అనుకోండి. తక్కువ marks నుండి ఎక్కువ marks వరకు చూడాలంటే ఈ list ను sort చేయవచ్చు. అప్పుడు marks [45, 63, 72, 90] గా మారతాయి. Ranking కోసం ఎక్కువ marks నుండి తక్కువ marks వరకు కావాలంటే descending order ఉపయోగించవచ్చు.

Code Examples

sort() తో Numbers ను Ascending Order లో అమర్చడం

numbers = [40, 10, 30, 20]
numbers.sort()
print(numbers)

ఈ ఉదాహరణలో sort() method numbers list ను చిన్నది నుండి పెద్దది వరకు అమర్చుతుంది. sort() అసలు list ను నేరుగా మార్చుతుంది.

[10, 20, 30, 40]

Descending Order లో Sorting

marks = [72, 45, 90, 63]
marks.sort(reverse=True)
print(marks)

reverse=True ఇవ్వడం వల్ల list పెద్ద value నుండి చిన్న value వరకు sort అవుతుంది. ఈ విధానాన్ని descending order అంటారు.

[90, 72, 63, 45]

sorted() తో కొత్త Sorted List తయారు చేయడం

prices = [250, 100, 400, 150]
sorted_prices = sorted(prices)
print(prices)
print(sorted_prices)

sorted() function అసలు prices list ను మార్చకుండా కొత్త sorted list ను return చేస్తుంది. అందువల్ల మొదటి print లో అసలు list, రెండవ print లో sorted list కనిపిస్తాయి.

[250, 100, 400, 150]
[100, 150, 250, 400]

Words ను Alphabetical Order లో Sort చేయడం

names = ["Ravi", "Anu", "Kiran", "Balu"]
names.sort()
print(names)

Words ఉన్న list ను కూడా sort() method తో alphabetical order లో అమర్చవచ్చు. Python ఇక్కడ words ను alphabet ఆధారంగా క్రమంలో పెడుతుంది.

['Anu', 'Balu', 'Kiran', 'Ravi']

Line-by-Line Explanation

numbers = [40, 10, 30, 20]
ఈ line లో numbers అనే list తయారు అవుతుంది. List లో నాలుగు integer values store అవుతాయి.
numbers.sort()
ఈ line numbers list ను ascending order లో sort చేస్తుంది. Python ఈ list లోని values ను చిన్నది నుండి పెద్దది వరకు అమర్చి, అదే list ను మార్చుతుంది.
print(numbers)
ఈ line sort అయిన numbers list ను screen పై చూపిస్తుంది.
marks = [72, 45, 90, 63]
ఈ line లో marks అనే list తయారవుతుంది. ఇందులో విద్యార్థుల marks ఉన్నాయి.
marks.sort(reverse=True)
ఈ line marks list ను descending order లో sort చేస్తుంది. reverse=True వల్ల పెద్ద mark ముందుగా వస్తుంది.
print(marks)
ఈ line descending order లో ఉన్న marks list ను print చేస్తుంది.
prices = [250, 100, 400, 150]
ఈ line లో prices అనే list తయారవుతుంది. ఈ list లో కొన్ని product prices ఉన్నాయి.
sorted_prices = sorted(prices)
ఈ line prices list ను ascending order లో sort చేసి, కొత్త list ను sorted_prices లో store చేస్తుంది. అసలు prices list మారదు.
print(prices)
ఈ line అసలు prices list ను print చేస్తుంది. sorted() ఉపయోగించినందువల్ల దాని order మారలేదు.
print(sorted_prices)
ఈ line కొత్తగా తయారైన sorted_prices list ను print చేస్తుంది.
names = [“Ravi”, “Anu”, “Kiran”, “Balu”]
ఈ line లో names అనే list తయారు అవుతుంది. ఇందులో నాలుగు names store అవుతాయి.
names.sort()
ఈ line names list ను alphabetical order లో అమర్చుతుంది.
print(names)
ఈ line alphabetical order లో ఉన్న names list ను screen పై చూపిస్తుంది.

Try It

Try this Python code:

Example

fruits = ["Mango", "Apple", "Banana", "Orange"]
fruits.sort()
print(fruits)

Try It Yourself »

Practice

Practice: scores = [55, 88, 42, 76, 91] అనే list ను పెద్ద score నుండి చిన్న score వరకు sort చేసి print చేయండి.

Hint: Descending order కోసం sort() method తో పాటు reverse=True ఉపయోగించండి.

Practice: cities = [“Delhi”, “Agra”, “Chennai”, “Bengaluru”] అనే list ను alphabetical order లో sort చేసి print చేయండి.

Hint: Strings list పై sort() method ఉపయోగించండి.

Practice: numbers = [8, 3, 6, 1] అనే list ను sorted() function ఉపయోగించి కొత్త list గా తయారు చేయండి. అసలు list మరియు కొత్త sorted list రెండింటినీ print చేయండి.

Hint: sorted_numbers = sorted(numbers) అనే విధానాన్ని ఉపయోగించండి.

Common Mistakes

numbers.sort అని parentheses లేకుండా రాయడం.

Method ను execute చేయడానికి numbers.sort() అని parentheses తో రాయాలి.

sort() ఉపయోగించిన తర్వాత అది కొత్త list ను return చేస్తుందని అనుకోవడం.

sort() అసలు list ను మార్చుతుంది. కొత్త sorted list కావాలంటే sorted(numbers) ఉపయోగించండి.

Descending order కోసం reverse = True ను తప్పుగా ఉపయోగించడం.

సరైన syntax numbers.sort(reverse=True). Keyword argument లో spaces లేకుండా రాయడం మంచిది.

Numbers మరియు unrelated data types ను ఒకే list లో sort చేయడానికి ప్రయత్నించడం.

సాధారణంగా ఒక list లో ఒకే రకమైన comparable values, అంటే numbers లేదా strings, ఉంచి sort చేయండి.

Interview Questions

Python list ను ascending order లో sort చేయడానికి ఏ method ఉపయోగిస్తారు?

Answer:

sort() method ఉపయోగిస్తారు. ఉదాహరణ: numbers.sort().

sort() మరియు sorted() మధ్య ప్రధాన తేడా ఏమిటి?

Answer:

sort() అసలు list ను మార్చుతుంది. sorted() అసలు list ను మార్చకుండా కొత్త sorted list ను return చేస్తుంది.

List ను descending order లో ఎలా sort చేస్తారు?

Answer:

sort(reverse=True) ఉపయోగించాలి. ఉదాహరణ: marks.sort(reverse=True).

Strings ఉన్న list ను sort చేయవచ్చా?

Answer:

అవును. sort() method strings ను alphabetical order లో అమర్చగలదు.

Exam Questions

ఈ code output ఏమిటి? values = [3, 1, 2]
values.sort()
print(values)

Answer:

Output: [1, 2, 3]

Descending order కోసం ఏ argument ఉపయోగిస్తారు?

Answer:

reverse=True argument ఉపయోగిస్తారు.

ఈ code output ఏమిటి? numbers = [4, 2, 3]
new_numbers = sorted(numbers)
print(numbers)

Answer:

Output: [4, 2, 3]. ఎందుకంటే sorted() అసలు list ను మార్చదు.

sort() method ను ఏ data structure పై ఈ పాఠంలో ఉపయోగిస్తున్నాము?

Answer:

Python list పై sort() method ను ఉపయోగిస్తున్నాము.

Quick Revision

  • sort() list ను అదే స్థానంలో మార్చి ascending order లో అమర్చుతుంది.
  • sorted() కొత్త sorted list ను return చేస్తుంది; అసలు list మారదు.
  • Descending order కోసం reverse=True ఉపయోగించాలి.
  • Numbers ను చిన్నది నుండి పెద్దది వరకు sort చేయవచ్చు.
  • Strings ను alphabetical order లో sort చేయవచ్చు.
  • Sorting data ను చదవడం, compare చేయడం మరియు rankings తయారు చేయడంలో ఉపయోగపడుతుంది.

Test Your Knowledge

Take a short quiz based on this lesson.

10 Questions • Results
Scroll to Top