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

पायथन सेट ऑपरेशन

सेट क्या है?

गणित में, एक सेट विशिष्ट वस्तुओं का संग्रह है, जिसे अपने आप में एक वस्तु माना जाता है। उदाहरण के लिए, संख्याएं 2, 4, और 6 अलग-अलग मानी जाती हैं, लेकिन जब उन्हें सामूहिक रूप से माना जाता है तो वे आकार तीन का एक सेट बनाते हैं, जिसे {2,4,6} लिखा जाता है।

सेट पर ऑपरेशन

ऑपरेशनसंकेतनअर्थ
इंटरसेक्शनA ∩ Bवे सभी तत्व जो A और B दोनों में हैं
यूनियनA ∪ Bवे सभी तत्व जो A या B में हैं (या दोनों में)
डिफरेंसA − Bवे सभी तत्व जो A में हैं लेकिन B में नहीं
कॉम्प्लीमेंटA' (या)वे सभी तत्व जो A में नहीं हैं

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

सेट के लिए विधियां

add(x) विधि:

यदि आइटम x पहले से मौजूद नहीं है तो उसे सेट में जोड़ता है।

A = {"AA", "BB", "CC"}
A.add("VV")

यह VV को A सेट में जोड़ देगा।

union(s) विधि:

दो सेट का यूनियन लौटाता है। दो मौजूदा सेट के बीच '|' ऑपरेटर का उपयोग करना My_Set1.union(My_Set2) लिखने के समान है।

A = {"AA", "BB", "CC"}
B = {"MM", "NN"}
Z = A.union(B)  # या Z = A|B

सेट Z में A और B दोनों के घटक होंगे।

intersection(s) विधि:

दो दिए गए सेट का इंटरसेक्शन लौटाता है। इस ऑपरेशन में '&' ऑपरेटर का उपयोग किया जा सकता है।

S = A.intersection(B)

सेट S में A और B के सामान्य तत्व होंगे।

difference(s) विधि:

एक सेट लौटाता है जिसमें पहले सेट में मौजूद सभी तत्व होते हैं लेकिन दूसरे सेट में मौजूद नहीं होते। हम यहां '-' ऑपरेटर का उपयोग कर सकते हैं।

W = A.difference(B)  # या S = A - B

सेट W में वे सभी तत्व होंगे जो A में हैं लेकिन B में नहीं।

clear() विधि:

पूरा मौजूदा सेट खाली हो जाएगा।

B.clear()

सेट B साफ हो जाता है।

सेट के लिए ऑपरेटर

सेट और फ्रोजन सेट निम्नलिखित ऑपरेटर का समर्थन करते हैं:

key in s          # सदस्यता जांच
key not in s      # गैर-सदस्यता जांच
s1 == s2          # s1, s2 के बराबर है
s1 != s2          # s1, s2 के बराबर नहीं है
s1 <= s2          # s1, s2 का सबसेट है
s1 < s2           # s1, s2 का उचित सबसेट है
s1 >= s2          # s1, s2 का सुपरसेट है
s1 > s2           # s1, s2 का उचित सुपरसेट है
s1 | s2           # s1 और s2 का यूनियन
s1 & s2           # s1 और s2 का इंटरसेक्शन
s1 - s2           # s1 में लेकिन s2 में नहीं तत्वों का सेट
s1 ^ s2           # s1 या s2 में से ठीक एक में तत्वों का सेट

उदाहरण कोड

# पायथन में सेट के कामकाज को प्रदर्शित करने का प्रोग्राम
# दो सेट बनाएं
My_Set1 = set()
My_Set2 = set()

# My_Set1 में तत्व जोड़ें
for i in range(1, 6):
    My_Set1.add(i)

# My_Set2 में तत्व जोड़ें
for i in range(3, 8):
    My_Set2.add(i)

print("My_Set1 = ", My_Set1)
print("My_Set2 = ", My_Set2)
print()

# My_Set1 और My_Set2 का यूनियन
My_Set3 = My_Set1 | My_Set2  # My_Set1.union(My_Set2)
print("My_Set1 और My_Set2 का यूनियन: My_Set3 = ", My_Set3)

# My_Set1 और My_Set2 का इंटरसेक्शन
My_Set4 = My_Set1 & My_Set2  # My_Set1.intersection(My_Set2)
print("My_Set1 और My_Set2 का इंटरसेक्शन: My_Set4 = ", My_Set4)
print()

# My_Set3 और My_Set4 के बीच संबंध जांचें
if My_Set3 > My_Set4:  # My_Set3.issuperset(My_Set4)
    print("My_Set3, My_Set4 का सुपरसेट है")
elif My_Set3 < My_Set4:  # My_Set3.issubset(My_Set4)
    print("My_Set3, My_Set4 का सबसेट है")
else:
    print("My_Set3, My_Set4 के समान है")

# My_Set4 और My_Set3 के बीच संबंध प्रदर्शित करें
if My_Set4 < My_Set3:  # My_Set4.issubset(My_Set3)
    print("My_Set4, My_Set3 का सबसेट है")
print()

# My_Set3 और My_Set4 के बीच अंतर
My_Set5 = My_Set3 - My_Set4
print("My_Set3 में तत्व और My_Set4 में नहीं: My_Set5 = ", My_Set5)
print()

# जांचें कि My_Set4 और My_Set5 डिस्जॉइंट सेट हैं या नहीं
if My_Set4.isdisjoint(My_Set5):
    print("My_Set4 और My_Set5 में कुछ भी सामान्य नहीं है\n")

# My_Set5 के सभी मान हटाएं
My_Set5.clear()
print("My_Set5 पर क्लियर लागू करने के बाद: ")
print("My_Set5 = ", My_Set5)

आउटपुट

My_Set1 = {1, 2, 3, 4, 5}
My_Set2 = {3, 4, 5, 6, 7}
My_Set1 और My_Set2 का यूनियन: My_Set3 = {1, 2, 3, 4, 5, 6, 7}
My_Set1 और My_Set2 का इंटरसेक्शन: My_Set4 = {3, 4, 5}
My_Set3, My_Set4 का सुपरसेट है
My_Set4, My_Set3 का सबसेट है
My_Set3 में तत्व और My_Set4 में नहीं: My_Set5 = {1, 2, 6, 7}
My_Set4 और My_Set5 में कुछ भी सामान्य नहीं है
My_Set5 पर क्लियर लागू करने के बाद:
My_Set5 = set()
  1. - पायथन सेट टाइप्स

    सेट्स मूल रूप से डिस्टिंक्ट हैश-टेबल ऑब्जेक्ट्स का अनऑर्डर्ड कलेक्शन होते हैं। हम सेट का उपयोग सेट यूनियन, इंटरसेक्शन, डिफरेंस जैसे गणितीय ऑपरेशन्स के लिए कर सकते हैं। हम किसी कलेक्शन से डुप्लिकेट्स हटाने के लिए भी सेट का उपयोग कर सकते हैं।सेट एलिमेंट पोजिशन रिकॉर्ड नहीं करता। यह इंडेक्सिंग, स्लाइसि

  1. - Python में <> ऑपरेशन क्या है?

    `<>` ऑपरेटर Python 2.x में नॉट इक्वल टू ऑपरेटर के रूप में उपलब्ध है। उसी ऑपरेशन के लिए `!=` ऑपरेटर भी है। Python 3.x में, `<>` ऑपरेटर डिप्रिकेटेड है। Python 2.7 >>> a = 5 >>> b = 7 >>> a <> b True >>> a != b True Python 3 >>> a = 5 >>> b =

  1. - Python Sets समझाया: विशिष्टता, अपरिवर्तनीयता, और ऑपरेशन्स

    Python Sets एक कलेक्शन टाइप है जिसमें अनऑर्डर्ड कलेक्शन होता है यूनिक और इम्यूटेबल ऑब्जेक्ट्स का। दूसरे शब्दों में, एक Python सेट डुप्लिकेट आइटम्स नहीं रख सकता और एक बार सेट बन जाने के बाद, आइटम्स बदल नहीं सकते। नोट: सेट के आइटम्स इम्यूटेबल हैं, इसका मतलब है कि हम आइटम्स को बदल नहीं सकते। हालांकि, स