जब स्ट्रिंग के संख्यात्मक भाग द्वारा स्ट्रिंग की दी गई सूची को सॉर्ट करने की आवश्यकता होती है, तो रेगुलर एक्सप्रेशन और 'findall' पद्धति का उपयोग किया जाता है।
उदाहरण
नीचे उसी का एक प्रदर्शन है -
import re def my_num_sort(my_str): return list(map(int, re.findall(r'\d+', my_str)))[0] my_list = ["pyth42on", '14is', '32fun', '89to', 'lea78rn'] print("The list is :") print(my_list) my_list.sort(key=my_num_sort) print("The result is :") print(my_list)
आउटपुट
The list is : ['pyth42on', '14is', '32fun', '89to', 'lea78rn'] The result is : ['14is', '32fun', 'pyth42on', 'lea78rn', '89to']
स्पष्टीकरण
-
आवश्यक पैकेज पर्यावरण में आयात किए जाते हैं।
-
एक विधि परिभाषित की जाती है जो एक स्ट्रिंग को एक पैरामीटर के रूप में लेती है।
-
यह विशिष्ट पैटर्न से मेल खाने के लिए 'findall' पद्धति का उपयोग करता है।
-
इसे 'मानचित्र' पद्धति का उपयोग करके एक स्ट्रिंग में परिवर्तित किया जाता है, और फिर एक 'सूची' में परिवर्तित किया जाता है।
-
यह विधि के आउटपुट के रूप में लौटाया जाता है।
-
विधि के बाहर, स्ट्रिंग्स की एक सूची को परिभाषित किया जाता है और कंसोल पर प्रदर्शित किया जाता है।
-
सूची को पहले परिभाषित विधि के अनुसार कुंजी के आधार पर क्रमबद्ध किया गया है।
-
यह सूची कंसोल पर आउटपुट के रूप में प्रदर्शित होती है।