Hi Krace, I believe as your code returns a generator instance it must be efficient in handling large input as well. And as you said in previous reply I've added "not isinstance(item, (str, bytes))", the code looks like
def flat_it(items): for item in items: if isinstance(item, Iterable) and not isinstance(item, (str, bytes)): for subitem in flat_it(item): yield subitem else: yield item and it works fine. But is there any possibilities to use "List Comprehension" methodology ? def flat_it(items): return [item for item in items if not isinstance(item, Iterable) *else flat_it(item)*] The above solution should be possible, but unfortunately list comprehension syntax dosen't allows an extra else condition (mentioned in bold letters above). -- [image: --] Rajiv Subramanian M [image: http://]about.me/rajiv.m1991 <http://about.me/rajiv.m1991?promo=email_sig> _______________________________________________ BangPypers mailing list BangPypers@python.org https://mail.python.org/mailman/listinfo/bangpypers