Python सूची सॉर्ट() उदाहरणों के साथ
⚡ स्मार्ट सारांश
Python list sort() फ़ंक्शन सूची के तत्वों को उनके स्थान पर व्यवस्थित करता है, डिफ़ॉल्ट रूप से आरोही क्रम में या रिवर्स पैरामीटर के माध्यम से अवरोही क्रम में, जबकि एक वैकल्पिक key फ़ंक्शन लंबाई, टपल फ़ील्ड या उपयोगकर्ता-परिभाषित फ़ंक्शन जैसे कस्टम मानदंडों द्वारा सॉर्ट करता है।

इसमें sort() विधि क्या है? Python?
sort() फ़ंक्शन में Python यह सूची को आरोही या अवरोही क्रम में व्यवस्थित करने में सहायक है। इसका उपयोग संख्यात्मक सूची, टुपल्स और स्ट्रिंग सूची को सॉर्ट करने के लिए किया जा सकता है। यह कोई नई सूची नहीं बनाता बल्कि मूल सूची को संशोधित या सॉर्ट करता है।
सॉर्ट विधि का सिंटैक्स Python
सॉर्ट फ़ंक्शन का सिंटैक्स निम्नलिखित है:
List.sort(key=…, reverse=…)
सॉर्ट फ़ंक्शन में दो वैकल्पिक पैरामीटर होते हैं, अर्थात्:
- कुंजी:- इसका उपयोग सॉर्टिंग मानदंड के आधार पर किसी फ़ंक्शन को सॉर्ट करने के लिए किया जाता है।
- Reverseयह फ़ंक्शन true या false में से कोई एक मान लेता है। यदि true है, तो यह कस्टम फ़ंक्शन सूची को अवरोही क्रम में सॉर्ट करता है।
सॉर्ट विधि का उपयोग करके सूची को आरोही क्रम में सॉर्ट करना Python
In Pythonसॉर्ट फ़ंक्शन डिफ़ॉल्ट रूप से किसी भी सूची को आरोही क्रम में सॉर्ट करता है। आरोही क्रम में एक सूची में सबसे कम मान बाईं ओर होता है, और सबसे अधिक मान दाईं ओर होता है।
उदाहरण:
Python कोड:
base_list=["गूगल","Reliance","Guru99","Content","Syntax"] base_list.sort() print("the base list after sorting is",base_list)
आउटपुट:
the base list after sorting is ['Content', 'गूगल', 'Guru99', 'Reliance', 'Syntax']
Code स्पष्टीकरण:
- उपरोक्त सूची एक यादृच्छिक रूप से परिभाषित स्ट्रिंग सूची है।
- का सॉर्ट फ़ंक्शन Python यादृच्छिक सूची को आरोही क्रम में क्रमबद्ध करने में मदद करता है, जिसमें शब्द की सबसे कम लंबाई बाईं ओर और शब्द की सबसे अधिक लंबाई दाईं ओर होती है।
सूची को अवरोही क्रम में क्रमबद्ध करना
सॉर्ट फ़ंक्शन सूची को अवरोही क्रम में सॉर्ट करने की भी अनुमति देता है। इसे क्रम के रूप में परिभाषित किया जा सकता है जहां सूची उच्चतम मान से शुरू होती है और निम्नतम मान पर समाप्त होती है।
सूची को अवरोही क्रम में सॉर्ट करने के लिए सॉर्ट फ़ंक्शन के रिवर्स पैरामीटर को सत्य के रूप में निर्दिष्ट किया गया है।
आइए नीचे दिए गए उदाहरण को देखें:
Python कोड:
base_list=[100,600,400,8000,50] base_list.sort() print("the base list after sorting is",base_list) # Reverse Order base_list.sort(reverse=True) print("the base list after REVERSE sorting is",base_list)
आउटपुट:
the base list after sorting is [50, 100, 400, 600, 8000] the base list after REVERSE sorting is [8000, 600, 400, 100, 50]
नोट: सुनिश्चित करें कि रिवर्स पैरामीटर के लिए शब्द “True” का असाइनमेंट किसी भी रन टाइम त्रुटि से बचने के लिए बड़े अक्षर “T” से शुरू होता है।
सॉर्ट विधि का उपयोग करके ट्यूपल्स की सूची को सॉर्ट करना Python
Python tuples अपरिवर्तनीय तत्वों का संग्रह है जो एक क्रमबद्ध अनुक्रम का अनुसरण करते हैं। Pythonके सॉर्ट फ़ंक्शन का उपयोग एक अनुकूलित फ़ंक्शन और लैम्ब्डा अभिव्यक्ति का उपयोग करके ट्यूपल्स की सूची को सॉर्ट करने के लिए किया जा सकता है।
एक कस्टमाइज्ड फंक्शन को बिना नाम के बनाया जा सकता है और इसे लैम्डा एक्सप्रेशन द्वारा दर्शाया जा सकता है। लैम्डा एक्सप्रेशन का सिंटैक्स निम्नलिखित है:
सिंटेक्स:
Lambda arguments: expression
उपरोक्त सिंटैक्स नीचे दिए गए पायथन कोड के समतुल्य है:
def name (arguments): return expression
यहां एक टपल और अनुकूलित फ़ंक्शन का उदाहरण दिया गया है, जो यह दर्शाता है कि कुंजी मापदंडों वाला सॉर्ट फ़ंक्शन टपल में तत्वों को सॉर्ट करने में कैसे मदद करता है:
Python कोड:
base_list = [('Alto', 2020, 500),('MSFT', 2022, 300),('Guru99', 2019, 1070)] def get_key(base_list): return base_list[2] base_list.sort(key=get_key,reverse=True) print("The change in base list is as follows",base_list)
आउटपुट:
The change in the base list is as follows [('Guru99', 2019, 1070), ('Alto', 2020, 500), ('MSFT', 2022, 300)]
Code स्पष्टीकरण:
- ट्यूपल को अवरोही क्रम में सॉर्ट करने के लिए रिवर्स पैरामीटर को सत्य के रूप में परिभाषित किया गया है।
- अनुकूलित फ़ंक्शन ट्यूपल का दूसरा तत्व लेता है।
- इसका उपयोग सॉर्ट फ़ंक्शन की कुंजी के रूप में किया जाता है।
आइये नीचे दिए गए उदाहरण को देखें जो लैम्ब्डा अभिव्यक्ति का उपयोग करता है:
Python कोड:
base_list = [('Alto', 2020, 500), ('MSFT', 2022, 300), ('Guru99', 2019, 1070)] base_list.sort(key=lambda base_list:base_list[2],reverse=True) print("The change in base list is as follows",base_list)
आउटपुट:
The change in the base list is as follows [('Guru99', 2019, 1070), ('Alto', 2020, 500), ('MSFT', 2022, 300)]
स्पष्टीकरण:
- लैम्ब्डा अभिव्यक्ति आपको टपल के तत्वों को उच्च से निम्न तक क्रमबद्ध करने में मदद करती है, जिसमें कुंजी टपल का दूसरा तत्व है।
- प्रोग्राम ट्यूपल के दूसरे तत्व के उच्चतम मान की जाँच करेगा।
कुंजी पैरामीटर के रूप में Len का उपयोग करके सूची आइटम को सॉर्ट करना
Len एक अंतर्निर्मित फ़ंक्शन है जो आइटम की लंबाई निर्धारित करता है। निर्धारित लंबाई का उपयोग सॉर्ट फ़ंक्शन में इंडेक्सिंग के लिए किया जा सकता है। ऐसा करने के लिए, हम Len को असाइन करते हैं। Python सॉर्ट फ़ंक्शन का कुंजी पैरामीटर.
निम्नलिखित Python कोड यह दर्शाता है कि सॉर्ट फ़ंक्शन के साथ Len फ़ंक्शन का उपयोग कैसे किया जाता है।
Python Code:
base_list=["Alto", "Guru99", "Python", "गूगल", "Java"] base_list.sort(key=len) print("The sorted list based on length:",base_list)
आउटपुट:
The sorted list based on length: ['Alto', 'Java', 'Guru99', 'Python', 'गूगल']
Code स्पष्टीकरण:
- तत्व की लंबाई सूची को आरोही क्रम में व्यवस्थित करने के लिए कुंजी पैरामीटर के लिए एक सूचकांक बन जाती है।
- Len फ़ंक्शन आधार सूची में मौजूद प्रत्येक तत्व की लंबाई का अनुमान लगाता है।
- यह सबसे छोटे तत्व को बायीं ओर तथा सबसे बड़े तत्व को दायीं ओर रखता है।
- यहां, alto और java शब्दों की लंबाई 4 है, जो सूची में पहले स्थान पर हैं, उसके बाद... Guru99, जिसकी लंबाई 6 है।
यह उदाहरण सॉर्ट फ़ंक्शन में रिवर्स पैरामीटर की अवधारणा को दर्शाता है, जैसा कि नीचे दिखाया गया है:
Python Code:
base_list=["Alto", "Guru99", "Python", "गूगल", "Java"] base_list.sort(key=len,reverse=True) print("The sorted list based on length:",base_list)
आउटपुट:
The sorted list based on length: ['Guru99', 'Python', 'गूगल', 'Alto', 'Java']
मुख्य पैरामीटर के रूप में उपयोगकर्ता-परिभाषित फ़ंक्शन का उपयोग करके सूची आइटम को सॉर्ट करना
आप किसी सूची को सॉर्ट करने के लिए उपयोगकर्ता-परिभाषित फ़ंक्शन को मुख्य पैरामीटर के रूप में भी उपयोग कर सकते हैं। यहाँ एक उदाहरण दिया गया है:
Python Code:
base_list = [{'Example':'Python','year':1991},{'Example':'Alto','year':2014},{'Example':'Guru99', 'year':1995},
{'Example':'गूगल','year':1985},{'Example':'Apple','year':2007},{'Example':'Emails','year':2010},]
def get_year(element):
return element['year']
base_list.sort(key=get_year)
print("The base list after sorting using explicit criteria",base_list)
आउटपुट:
The base list after sorting using explicit criteria [{'Example': 'गूगल', 'year': 1985}, {'Example': 'Python', 'year': 1991}, {'Example': 'Guru99', 'year': 1995}, {'Example': 'Apple', 'year': 2007}, {'Example': 'Emails', 'year': 2010}, {'Example': 'Alto', 'year': 2014}]
Code स्पष्टीकरण:
- वर्ष लौटाने के लिए एक उपयोगकर्ता-परिभाषित फ़ंक्शन बनाया गया है
- कुंजी पैरामीटर उपयोगकर्ता-परिभाषित फ़ंक्शन को मानदंड के रूप में लेता है।
- सॉर्ट फ़ंक्शन सूची को तत्व “वर्ष” के मान के आधार पर आरोही क्रम में व्यवस्थित करेगा।
सॉर्ट विधि और सॉर्टेड विधि के बीच अंतर Python
ऊपर दिए गए उदाहरणों को समझने के बाद, दोनों सॉर्टिंग टूल्स की सीधे तुलना करना उपयोगी होगा। अंतरों को संक्षेप में बताने से पहले, आइए सॉर्टेड मेथड के सिंटैक्स को समझते हैं।
Python सिंटेक्स:
sorted (list_name, reverse=…., key=..)
Code स्पष्टीकरण:
- सॉर्टेड फ़ंक्शन सूची को आरोही क्रम या अवरोही क्रम में सॉर्ट करता है।
- फ़ंक्शन तीन पैरामीटर स्वीकार करता है, जिनमें से दो पैरामीटर वैकल्पिक प्रकार के होते हैं और एक पैरामीटर आवश्यक प्रकार का होता है।
- Sorted विधि का उपयोग करते समय पैरामीटर list_name आवश्यक है।
- सॉर्टेड विधि किसी भी प्रकार की पुनरावृत्तीय सूची को इनपुट के रूप में ले सकती है।
- कुंजी पैरामीटर और रिवर्स पैरामीटर सॉर्टेड विधि के अंतर्गत वैकल्पिक पैरामीटर हैं Python.
यहाँ sort और sorted फ़ंक्शन का उपयोग करने का एक उदाहरण दिया गया है Python:
Python कोड:
#Use of the Sorted method Base_list=[11,10,9,8,7,6] print("the original list is",Base_list) New_list=sorted(Base_list) print("the New list using sorted method is",New_list) #Use of the Sort method Base_list=[11,10,9,8,7,6] print("the original list is",Base_list) New_list=Base_list.sort() print("the New list using sort method is",New_list)
आउटपुट:
the original list is [11, 10, 9, 8, 7, 6] the new list using the sorted method is [6, 7, 8, 9, 10, 11] the original list is [11, 10, 9, 8, 7, 6] the new list using the sort method is None
Code स्पष्टीकरण:
- मूल सूची को सॉर्टेड फ़ंक्शन के लिए आवश्यक पैरामीटर के रूप में पास किया जाता है।
- सॉर्टेड विधि मूल सूची के अलावा एक नई सूची लौटाती है।
- चूंकि sorted विधि में कोई अतिरिक्त पैरामीटर पास नहीं किया जाता है, इसलिए नई सूची डिफ़ॉल्ट रूप से आरोही क्रम में सॉर्ट की जाती है।
- सॉर्ट फ़ंक्शन कोई नई सूची नहीं बनाता है.
निम्नलिखित प्रमुख समानताओं और भिन्नताओं के बिंदु हैं:
| सॉर्टेड फ़ंक्शन | सॉर्ट फ़ंक्शन |
|---|---|
| सॉर्टेड फ़ंक्शन Python एक अंतर्निहित फ़ंक्शन है जो list_name को आवश्यक पैरामीटर के रूप में लेता है। | सॉर्ट फ़ंक्शन मूल सूची को पैरामीटर के रूप में नहीं लेता है। |
| सॉर्टेड विधि एक नई सूची लौटाती है | सॉर्ट फ़ंक्शन नई सूची नहीं लौटाता |
| पुनरावृत्त सूचियों के लिए सॉर्टेड फ़ंक्शन का उपयोग किया जाना चाहिए | सॉर्ट फ़ंक्शन का उपयोग गैर-पुनरावृत्त सूचियों के लिए किया जाना चाहिए। |
| यह मूल सूची को संशोधित नहीं करता है तथा हमें मूल डेटा को बनाए रखने की अनुमति देता है। | सॉर्ट फ़ंक्शन मूल फ़ंक्शन को संशोधित करता है और इसलिए कम मेमोरी स्थान घेरता है |
सॉर्टेड विधि या सॉर्ट विधि का उपयोग कब करें?
आइए एक उदाहरण लेते हैं जिसमें रेस डेटा को सॉर्ट करने की आवश्यकता होती है। प्रोग्राम बिब नंबर और रेस खत्म करने में लगने वाले सेकंड में समय का उपयोग करता है।
Python कोड:
from collections import namedtuple Base = namedtuple('Runner', 'bibnumber duration') blist = [] blist.append(Base('8567', 1500)) blist.append(Base('5234', 1420)) blist.append(Base('2344', 1600)) blist.append(Base('2342', 1490)) blist.append(Base('23444', 1620)) blist.append(Base('6674', 1906)) print("original list",blist) blist.sort(key=lambda x: getattr(x, 'duration')) top_five_result = blist[:5] print("Results using sort function",top_five_result) r_blist=sorted(blist,key=lambda x: getattr(x, 'duration')) top_five_result = r_blist[:5] print("Results using sorted function",top_five_result)
आउटपुट:
original list [Runner(bibnumber='8567', duration=1500), Runner(bibnumber='5234', duration=1420), Runner(bibnumber='2344', duration=1600), Runner(bibnumber='2342', duration=1490), Runner(bibnumber='23444', duration=1620), Runner(bibnumber='6674', duration=1906)] Results using sort function [Runner(bibnumber='5234', duration=1420), Runner(bibnumber='2342', duration=1490), Runner(bibnumber='8567', duration=1500), Runner(bibnumber='2344', duration=1600), Runner(bibnumber='23444', duration=1620)] Results using sorted function [Runner(bibnumber='5234', duration=1420), Runner(bibnumber='2342', duration=1490), Runner(bibnumber='8567', duration=1500), Runner(bibnumber='2344', duration=1600), Runner(bibnumber='23444', duration=1620)]
Code स्पष्टीकरण:
- आधार सूची को सॉर्ट फ़ंक्शन और सॉर्टेड फ़ंक्शन दोनों का उपयोग करके सॉर्ट किया जाता है।
- सॉर्ट फ़ंक्शन लागू होने पर आधार सूची खो जाती है.
- सॉर्ट फ़ंक्शन को मूल डेटा सेट पर लागू नहीं किया जाना चाहिए। इसका उपयोग तब किया जाना चाहिए जब मूल डेटा सेट का कॉपी संस्करण हो।
- सॉर्टेड फ़ंक्शन मूल सूची को बनाए रखता है। यह उसे ओवरराइड नहीं करता है।
- यह बेहतर सुविधाएँ प्रदान करता है tracसक्षमता और प्रभावी डेटा प्रबंधन।

