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

पायथन में दो सूचियों की तुलना कैसे करें?

पायथन में सूची समान वस्तुओं का संग्रह है। हमें कभी-कभी कुछ कार्यों को करने के लिए दो सूचियों में डेटा आइटम की तुलना करने की आवश्यकता हो सकती है। हम पायथन में दो सूचियों की तुलना करने के कुछ तरीकों पर चर्चा करेंगे।

list.sort() और ==ऑपरेटर का उपयोग करना

List.sort() विधि दो सूचियों को सॉर्ट करती है और ==ऑपरेटर दो सूचियों की तुलना आइटम द्वारा करता है जिसका अर्थ है कि उनके पास समान स्थिति में समान डेटा आइटम हैं। यह जाँचता है कि सूची में समान डेटा आइटम मान हैं या नहीं, लेकिन यह सूची में तत्वों के क्रम को ध्यान में नहीं रखता है। इसका मतलब यह है कि सूची [1,2,3] तुलना की इस पद्धति के अनुसार सूची [2,1,3] के बराबर होगी।

उदाहरण

def compareList(l1,l2):
   l1.sort()
   l2.sort()
   if(l1==l2):
      return "Equal"
   else:
      return "Non equal"
l1=[1,2,3]
l2=[2,1,3]
print("First comparison",compareList(l1,l2))
l3=[1,2,3]
l4=[1,2,4]
print("Second comparison",compareList(l3,l4))

आउटपुट

First comparison Equal
Second comparison Non equal

संग्रह का उपयोग करना। काउंटर ()

यह विधि दूसरी सूची के साथ पहली सूची में प्रत्येक तत्व की आवृत्ति की तुलना करके सूचियों की समानता के लिए परीक्षण करती है। यह विधि सूची के तत्वों के क्रम को भी ध्यान में नहीं रखती है।

उदाहरण

import collections
def compareList(l1,l2):
   if(collections.Counter(l1)==collections.Counter(l2)):
      return "Equal"
   else:
      return "Non equal"
l1=[1,2,3]
l2=[2,1,3]
print("First comparison",compareList(l1,l2))
l3=[1,2,3]
l4=[1,2,4]
print("Second comparison",compareList(l3,l4))

आउटपुट

First comparison Non equal
Second comparison Equal

sum() ,zip() और len()

का उपयोग करना

यह विधि पहले दो सूचियों के प्रत्येक तत्व की तुलना करती है और उन्हें 1 के योग के रूप में संग्रहीत करती है, जिसकी तुलना दूसरी सूची की लंबाई से की जाती है। इस पद्धति के लिए, हमें पहले यह जांचना होगा कि इस गणना को करने से पहले दोनों सूचियों की लंबाई बराबर है या नहीं।

यह विधि तत्वों के क्रम की भी जाँच करती है। इसका मतलब है कि सूची [1,2,3] सूची [2,1,3] के बराबर नहीं है।

उदाहरण

def compareList(l1,l2):
   if(len(l1)==len(l2) and len(l1)==sum([1 for i,j in zip(l1,l2) if i==j])):
      return "Equal"
   else:
      return "Non equal"
l1=[1,2,3]
l2=[2,1,3]
print("First comparison",compareList(l1,l2))
l3=[1,2,3]
l4=[1,2,3]
print("Second comparison",compareList(l3,l4))

आउटपुट

First comparison Non equal
Second comparison Equal

जैसा कि ऊपर के उदाहरण में, पहली तुलना के लिए, दोनों सूचियों में डेटा आइटम समान हैं लेकिन तत्वों का क्रम अलग है। इसलिए, पहली तुलना रिटर्न के बराबर नहीं है।

==ऑपरेटर का उपयोग करना

यह पहली विधि का संशोधन है। इस पद्धति में, सूचियों की तुलना बिना छँटाई के की जाती है और इस प्रकार, यह विधि सूचियों में डेटा आइटम के क्रम को ध्यान में रखती है।

उदाहरण

def compareList(l1,l2):
   if(l1==l2):
      return "Equal"
   else:
      return "Non equal"
l1=[1,2,3]
l2=[2,1,3]
print("First comparison",compareList(l1,l2))
l3=[1,2,3]
l4=[1,2,3]
print("Second comparison",compareList(l3,l4))

आउटपुट

First comparison Non equal
Second comparison Equal

ये पाइथन में सूचियों की तुलना करने के कुछ तरीके हैं, दोनों डेटा आइटम के क्रम को ध्यान में रखते हुए और साथ ही डेटा आइटम के क्रम को ध्यान में रखे बिना।


  1. पायथन में लाइन द्वारा दो अलग-अलग फाइलों की तुलना कैसे करें?

    पायथन मानक पुस्तकालय में विशेष रूप से स्ट्रिंग्स/फाइलों के बीच अंतर खोजने के उद्देश्य से एक मॉड्यूल है। Difflib लाइब्रेरी का उपयोग करके एक अंतर प्राप्त करने के लिए, आप बस उस पर United_diff फ़ंक्शन को कॉल कर सकते हैं। उदाहरण के लिए, मान लें कि आपके पास 2 फ़ाइलें हैं, फ़ाइल1 और फ़ाइल2 निम्न सामग्री के

  1. पायथन शब्दकोशों की दो सूचियों की तुलना करें

    इस पोस्ट में, हम देखते हैं कि पायथन में शब्दकोशों की दो सूचियों की तुलना कैसे करें और दो सूचियों के बीच के अंतर को कैसे प्रिंट करें। तुलना विधि कुंजी की तुलना करती है और शब्दकोशों में मान। साथ ही, पायथन में शब्दकोशों की दो सूचियों की तुलना करते समय तत्वों का क्रम मायने नहीं रखता। पायथन में शब्दकोश

  1. एक्सेल में दो कॉलम या सूचियों की तुलना कैसे करें (4 उपयुक्त तरीके)

    एक्सेल में विभिन्न कार्य करते समय हम अक्सर ऐसी स्थिति में आते हैं जहां दो या एकाधिक कॉलम के मिलान और अंतर की आवश्यकता होती है। एक्सेल में दो कॉलम या सूचियों की तुलना करना कोई मुश्किल काम नहीं है, लेकिन आप भ्रमित हो सकते हैं क्योंकि ऐसा करने के कई तरीके हैं। इस लेख में, हम एक्सेल में कॉलम के मिलान और