पायथन में सूची समान वस्तुओं का संग्रह है। हमें कभी-कभी कुछ कार्यों को करने के लिए दो सूचियों में डेटा आइटम की तुलना करने की आवश्यकता हो सकती है। हम पायथन में दो सूचियों की तुलना करने के कुछ तरीकों पर चर्चा करेंगे।
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
ये पाइथन में सूचियों की तुलना करने के कुछ तरीके हैं, दोनों डेटा आइटम के क्रम को ध्यान में रखते हुए और साथ ही डेटा आइटम के क्रम को ध्यान में रखे बिना।