Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Python

पायथन में itertools का उपयोग करके स्ट्रिंग के पहले n विशिष्ट क्रमपरिवर्तन प्रिंट करें

वस्तुओं की संख्या का क्रमपरिवर्तन इस बात का प्रतिनिधित्व करता है कि अपडेट्स को विभिन्न अनुक्रमों में कैसे प्रस्तुत किया जा सकता है। लेकिन कभी-कभी दी गई वस्तुओं की श्रृंखला में दो वस्तुएं समान हो सकती हैं। उस स्थिति में दो अनुक्रम समान हो जाएंगे। इस लेख में हम देखेंगे कि दी गई वस्तुओं की सूची से केवल अद्वितीय अनुक्रमों को कैसे प्रस्तुत किया जाए।

itertools मॉड्यूल में permutations नामक एक विधि होती है जो इसे प्राप्त करने में हमारी मदद करती है। अद्वितीय क्रमपरिवर्तन प्राप्त करने के लिए हम set मेथड की मदद लेते हैं जो केवल विशिष्ट एलिमेंट्स को स्टोर करता है। लेकिन उससे पहले हम sorted मेथड का उपयोग करके एलिमेंट्स को सॉर्टेड क्रम में प्राप्त करते हैं।

नीचे दिए गए प्रोग्राम में K संपूर्ण संभावित अद्वितीय क्रमपरिवर्तनों में से हमारे द्वारा प्रदर्शित किए जाने वाले अद्वितीय एलिमेंट्स की अधिकतम संख्या है। एक while लूप का उपयोग करके हम अद्वितीय एलिमेंट को अंतिम सूची में जोड़ते रहते हैं जिसे हम प्रदर्शित करना चाहते हैं, केवल तभी जब वह पहले से सेट में न जोड़ा गया हो।

उदाहरण

from itertools import permutations

def permutation_value(str, k):
    s = sorted(list(str))
    p = permutations(s)
    m = 0
    set_1 = set()
    str = ''
    while m < k:
        str = ''.join(p.__next__())
        if str not in set_1:
            set_1.add(str)
            print(str)
            m += 1

str = "xyxxz"
i = 12
permutation_value(str, i)

आउटपुट

उपरोक्त कोड चलाने से हमें निम्न परिणाम मिलता है -

xxxyz
xxxzy
xxyxz
xxyzx
xxzxy
xxzyx
xyxxz
xyxzx
xyzxx
xzxxy
xzxyx
xzyxx
  1. पायथन प्रोग्राम: दी गई स्ट्रिंग के सभी क्रमपरिवर्तन प्रिंट करें पायथन प्रोग्राम: दी गई स्ट्रिंग के सभी क्रमपरिवर्तन प्रिंट करें

    इस लेख में हम दी गई समस्या के समाधान के बारे में जानेंगे। समस्या कथन हमें एक स्ट्रिंग दी गई है, हमें स्ट्रिंग के सभी संभावित क्रमपरिवर्तन प्रदर्शित करने हैं। उदाहरण # रूपांतरण def toString(List): return .join(List) # क्रमपरिवर्तन def permute(a, l, r): if l == r: print(toString(a))

  1. - स्ट्रिंग फॉर्मेटिंग का उपयोग करके पायथन में पूरा टुपल कैसे प्रिंट करें?

    पायथन में पुरानी स्टाइल के स्ट्रिंग फॉर्मेटिंग का उपयोग करते समय, यानी % (), यदि प्रतिशत के बाद की चीज एक टुपल है, तो पायथन इसे तोड़ने और इसमें व्यक्तिगत आइटम को स्ट्रिंग में पास करने का प्रयास करता है। उदाहरण के लिए: tup = (1,2,3) print(this is a tuple %s % (tup)) यह आउटपुट देगा: TypeError: not a

  1. - पायथन में कन्कैटनेटेड स्ट्रिंग कैसे प्रिंट करें?

    जब स्ट्रिंग्स के साथ उपयोग किया जाता है, तो प्लस (+) कन्कैटनेशन ऑपरेटर के रूप में परिभाषित होता है। यह दूसरी स्ट्रिंग को पहली स्ट्रिंग में जोड़ता है।>>> s1 = TutorialsPoint \n>>> s2 = Hyderabad\n>>> print(s1 + s2)\nTutorialsPoint Hyderabad