पायथन में स्ट्रिंग्स को क्रमपरिवर्तन करना
किसी दिए गए स्ट्रिंग के सभी संभावित क्रमपरिवर्तन ढूंढना एक चुनौतीपूर्ण कार्य हो सकता है। हालाँकि, पायथन itertools मॉड्यूल का उपयोग करके एक सीधा समाधान प्रदान करता है। . यह एक पुनरावर्तनीय को इनपुट के रूप में लेता है और एक जेनरेटर ऑब्जेक्ट लौटाता है जो पुनरावृत्तीय के सभी संभावित क्रमपरिवर्तनों पर पुनरावृत्त होता है।
एक स्ट्रिंग के मामले में, हम इसे सूची() फ़ंक्शन का उपयोग करके पुनरावृत्त में परिवर्तित कर सकते हैं। स्ट्रिंग के सभी संभावित क्रमपरिवर्तन प्राप्त करने के लिए, हम निम्नलिखित कोड का उपयोग करते हैं:
itertools आयात क्रमपरिवर्तन से स्ट्रिंग = 'स्टैक' perms = [''.join(p) for p in permutations(list(string))]परिणाम स्ट्रिंग की एक सूची होगी जिसमें मूल स्ट्रिंग के सभी क्रमपरिवर्तन शामिल होंगे।from itertools import permutations
string = 'stack'
perms = [''.join(p) for p in permutations(list(string))]
यदि आप डुप्लिकेट क्रमपरिवर्तन को बाहर करना चाहते हैं, तो आप एक सेट का उपयोग कर सकते हैं क्योंकि यह केवल अद्वितीय तत्वों को बरकरार रखता है।
perms = set([''. क्रमपरिवर्तन (सूची (स्ट्रिंग)) में पी के लिए शामिल हों (पी)])
itertools.permutations() के लाभ
perms = set([''.join(p) for p in permutations(list(string))])
कुशल: विधि एक का उपयोग करती है त्वरित निष्पादन के लिए सी-आधारित कार्यान्वयन। ]उदाहरण आउटपुट
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3