On Tue, Dec 9, 2014 at 11:30 PM, Chris Angelico <ros...@gmail.com> wrote: > Are you sure it isn't? Your 'space' is an iterable cubic > cross-product. Your first loop checks (0,0,0) which is the first > element returned, and is thus fast... but it also *consumes* that > first element. The next time you test it, the entire space gets > consumed, looking for another (0,0,0), which won't exist. That means > iterating over 580**3 == 195112000 (two hundred million) tuples, and > that *is* going to be slow.
Huh, I wasn't even aware that membership tests worked on iterables with no __contains__ method. Seems odd to me that 'x in y' should be supported but not 'len(y)'.
-- https://mail.python.org/mailman/listinfo/python-list