mathieu a écrit :
Hi there,

  I am trying to write something very simple to test if a list
contains another one:

a = [1,2,3]

b = [3,2,1,4]

but 'a in b' returns False.

Indeed. Lists are not sets, and the fact that all elements of list a happens to also be part of list b doesn't make the list a itself an element of list b.

>>> a = [1, 2, 3]
>>> b = [3,2,1,4]
>>> c = [b, a]
>>> a in c
True
>>> b in c
True
>>> c
[[3, 2, 1, 4], [1, 2, 3]]
>>>


How do I check that a is indeed contained
in b ?

But that's what you did - you *did* checked if a was contained in b, and this is not the case. What you want is to check if *all elements* of a are contained in b, which is quite another problem. Now the answer to your question : use sets.

>>> set(a).issubset(set(b))
True
>>>

HTH

--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to