On 03/07/2012 12:07 AM, col speed wrote:
<snip>
Then we have:


a = tuple(range(10))
b = tuple(reversed(a))
any(a) in b
True

any(b) in a
True

any((a,b)) in (a,b)
False  # I think I understand this now, but I must admit it looks confusing!

Thanks again
Col

None of those last three does anything usefully similar to your original request. Just because an English phrase makes sense, you can't expect the equivalent set of keywords to do anything remotely related.

If you insist on using the any function in solving your problem, you'll have to preprocess your two arrays into a single iterator. And at that point, you might as well solve the problem in that loop.

(untested):

def test(a, b):
    for val1 in a:
        for val2 in b:
            if val1 == val2:  return True
    return False
print test(a,b)

Rather than:

def  findinter(a, b):
    res = []
    for val1 in a:
         for val2 in b:
              res.append(val1 == val2)
    return res

print any(findinter(a,b))



--

DaveA

_______________________________________________
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor

Reply via email to