RE: Itertools wishlists
From: Robert Brewer (fumanchu_at_amor.org)
Date: Mon, 14 Mar 2005 09:53:18 -0800 To: <firstname.lastname@example.org>
Steven Bethard wrote:
> Ville Vainio wrote:
> > A simpler API:
> > def flatten(sequence, atomic_test = lambda o:
> > """ don't recurse into iterables if atomic_test -> True """
> Yes, this is also the API I would have suggested. Simple,
> but flexible enough to handle the odd cases with the occasional
> user-defined iterable non-containers.
If there are two or three common atomic_test's they could also be placed
into itertools globals (with better names, of course ;):
return isinstance(item, basestring)
def flatten(seq, atomic_test = is_string):
Perhaps atomic_test could allow a tuple or list of tests and combine