0

If i have a list (or list of lists) with elements of size k and i want to generate all higher level elements (of size k + 1) from it,what should i do??Any pointers would be of a great help
I tried the following for lists...for list of lists i do not know what to do :((

#pruned_k is a list or list of lists
for element in pruned_k:
            if len(element)=1:  #generate all 2 size sets
                for i in range(0,len(pruned_k)-1,2)
                pruned_new.append(pruned_k[i:i+2])
                else: #if pruned_k is list of lists e.g [['a','b'],['b','c']]
                    pruned_new.append(

Thanks a lot,
girish

2
Contributors
2
Replies
4
Views
11 Years
Discussion Span
Last Post by girish_sahani
0

You need to give more details of what you want to accomplish.

At first look, there are quite a few errors in your code. Your indentations are a mess (they are not cosmetic, they actually form statement blocks in Python!), if needs == as comparison operator, for needs colon at the end of line, and pruned_new has to be initiated as empty list.

0

sorry for the unindented code :(
what i want to do is generate 2 size sets from a list of single elements,generate 3 size sets from a list of double elements(each element is a list of 2) and so on...
e.g [['a','b'],['a','c']] should give [['a','b','c']]
for list of single elements i can easily generate sets of 2 elements bu iterating over the list...but for lists of lists i am not able to do that...
one thing i thought of is to 'flatten' the list of lists (convert it into a list) after getting the length of its elements (suppose k) ,remove duplicates,and then generate the k+1 size sets from the flattened list.

This question has already been answered. Start a new discussion instead.
Have something to contribute to this discussion? Please be thoughtful, detailed and courteous, and be sure to adhere to our posting rules.