2015-12-26 5 views
5

उदाहरण के लिए, मैं tuple (1, 2) में प्रत्येक तत्व को देखना चाहता हूं tuple (1, 2, 3, 4, 5) में हैं। मुझे नहीं लगता कि उपयोग लूप ऐसा करने का एक अच्छा तरीका है, मुझे लगता है कि यह एक पंक्ति में किया जा सकता है।कैसे जांचें कि टुपल या सूची में सभी तत्व दूसरे में हैं या नहीं?

+1

tuples हल कर रहे हैं? –

उत्तर

12

आप set.issubset या set.issuperset का उपयोग यह जांचने के लिए कर सकते हैं कि एक टुपल या सूची में प्रत्येक तत्व दूसरे में है या नहीं।

>>> tuple1 = (1, 2) 
>>> tuple2 = (1, 2, 3, 4, 5) 
>>> set(tuple1).issubset(tuple2) 
True 
>>> set(tuple2).issuperset(tuple1) 
True 
-1

एक और विकल्प एक साधारण कार्य करना होगा जब सेट को ध्यान में नहीं आता है।

def tuple_containment(a,b): 
    ans = True 
    for i in iter(b): 
     ans &= i in a 
    return ans 

अब बस उन्हें

>>> tuple_containment ((1,2,3,4,5), (1,2)) 
True 
>>> tuple_containment ((1,2,3,4,5), (2,6)) 
False 
+2

ओपी ने स्पष्ट रूप से "लूप के लिए नहीं" का उल्लेख किया है। * एक पंक्ति * – styvane

+0

और मैंने स्पष्ट रूप से उल्लेख किया कि मेरा वह समय है जब _obvious दिमाग में नहीं आता है –

+0

'tuple_checker' क्या करता है? समानता, रोकथाम, या सिर्फ तब्दील होने के लिए जांचें? –

0

परीक्षण मुझे लगता है कि आप इस हैं: (प्रयोग all)

>>> all(i in (1,2,3,4,5) for i in (1,6)) 
True 
संबंधित मुद्दे

 संबंधित मुद्दे