जब मामले के अंतर के आधार पर स्ट्रिंग्स को सॉर्ट करने की आवश्यकता होती है, तो एक विधि परिभाषित की जाती है जो एक स्ट्रिंग को एक पैरामीटर के रूप में लेती है। यह विधि केस डिफरेंस पाने के लिए लिस्ट कॉम्प्रिहेंशन और 'आइसपर' और 'आइस्लोअर' मेथड्स के साथ लिस्ट कॉम्प्रिहेंशन का इस्तेमाल करती है। उनका अंतर क्रमबद्ध मान देता है।
उदाहरण
नीचे उसी का एक प्रदर्शन है
def get_diff(my_string): lower_count = len([ele for ele in my_string if ele.islower()]) upper_count = len([ele for ele in my_string if ele.isupper()]) return abs(lower_count - upper_count) my_list = ["Abc", "Python", "best", "hello", "coders"] print("The list is :") print(my_list) my_list.sort(key=get_diff) print("Sorted Strings by case difference :") print(my_list)
आउटपुट
The list is : ['Abc', 'Python', 'best', ‘hello’, 'coders'] Sorted Strings by case difference : ['Abc', 'Python', 'best', 'coders', ‘hello’]
स्पष्टीकरण
-
'get_diff' नाम की एक विधि परिभाषित की गई है जो एक पैरामीटर के रूप में स्ट्रिंग्स की सूची लेती है।
-
लिस्ट कॉम्प्रिहेंशन और 'islower' और 'isupper' मेथड्स का इस्तेमाल यह जांचने के लिए किया जाता है कि स्ट्रिंग्स अपर केस हैं या लोअर केस।
-
ये मान दो अलग-अलग चरों में संग्रहीत हैं।
-
इन दो चरों के बीच पूर्ण अंतर आउटपुट के रूप में दिया जाता है।
-
विधि के बाहर, एक सूची परिभाषित की जाती है और कंसोल पर प्रदर्शित होती है।
-
सूची को पहले परिभाषित पद्धति के आधार पर क्रमबद्ध किया गया है।
-
यह वह आउटपुट है जो कंसोल पर प्रदर्शित होता है।