जब विराम चिह्न गिनती के आधार पर स्ट्रिंग्स को क्रमबद्ध करना आवश्यक हो, तो एक विधि परिभाषित की जाती है जो पैरामीटर के रूप में एक स्ट्रिंग लेती है और परिणाम निर्धारित करने के लिए सूची समझ और 'in' ऑपरेटर का उपयोग करती है।
नीचे इसका प्रदर्शन दिया गया है:
उदाहरण
from string import punctuation
def get_punctuation_count(my_str):
return len([element for element in my_str if element in punctuation])
my_list = ["python@%^", "is", "fun!", "to@#r", "@#$learn!"]
print("The list is :")
print(my_list)
my_list.sort(key = get_punctuation_count)
print("The result is :")
print(my_list)
आउटपुट
The list is : ['python@%^', 'is', 'fun!', 'to@#r', '@#$learn!'] The result is : ['is', 'fun!', 'to@#r', 'python@%^', '@#$learn!']
व्याख्या
आवश्यक पैकेज वातावरण में आयात किए गए हैं।
'get_punctuation_count' नामक एक विधि परिभाषित की गई है जो पैरामीटर के रूप में स्ट्रिंग लेती है, और सूची समझ का उपयोग करके तत्वों पर पुनरावृत्ति करती है।
यह जांचती है कि क्या स्ट्रिंग में विराम चिह्न है।
यह विराम चिह्न वाले स्ट्रिंग की लंबाई को आउटपुट के रूप में वापस करती है।
विधि के बाहर, एक सूची परिभाषित की गई है और कंसोल पर प्रदर्शित की गई है।
सूची को 'sort' विधि का उपयोग करके क्रमबद्ध किया जाता है और कुंजी को पहले से परिभाषित विधि के रूप में निर्दिष्ट किया जाता है।
यही आउटपुट है जो कंसोल पर प्रदर्शित किया जाता है।