440,629 Members | 1,222 Online
Need help? Post your question and get tips & solutions from a community of 440,629 IT Pros & Developers. It's quick & easy.

# walking a list

 P: n/a Hi all, I have this little question, basicly i solved it already by writing a little bit of code for it (using recursion), but still i am wondering if there is a shorter ways to do things (like 1 or 2 commands). the problem is this, imagine i have a list: list = [1, 2, [3, 2], 5, [6, 5, 4]] if i print out this list using 'for element in list: print element,' it will show me the following: 1 2 [3, 2] 5 [6, 5, 4] but what i really want to show is: 1 2 3 2 5 6 5 4 What i want to do is run through the list and when i get back a list run through that list as well (and if that list contains a list run through it again etc.). all suggestions are welcome, i'm ready to learn from the pro's ;) -- One monk said to the other, "The fish has flopped out of the net! How will it live?" The other said, "When you have gotten out of the net, I'll tell you." Jul 18 '05 #1
2 Replies

 P: n/a def print_or_recurse(l): for i in l: if isinstance(i, list): print_or_recurse(i) else: print i print_or_recurse([1,2,[3,2],5,[6,5,4]]) Jeff Jul 18 '05 #2

 P: n/a On Fri, 23 Apr 2004 13:21:43 -0500, Jeff Epler wrote: if isinstance(i, list): print_or_recurse(i) great! thanks, i didn't know 'isinstance' existed. what i did was the following: if 'list' in str(type(list)): it worked as well :) -- One monk said to the other, "The fish has flopped out of the net! How will it live?" The other said, "When you have gotten out of the net, I'll tell you." Jul 18 '05 #3

### This discussion thread is closed

Replies have been disabled for this discussion.