level 6
不谢
In [1]: lst1=[1,[2,3],4,[5,6,7]]
In [2]: new_lst=[]
In [3]: for i in lst1:
...: if type(i) is int:
...: new_lst.append([i])
...: else:
...: new_lst.append(i)
...:
In [4]: new_lst
Out[4]: [[1], [2, 3], [4], [5, 6, 7]]
In [5]: [[a,b,c,d] for a in new_lst[0] for b in new_lst[1] for c in new_lst[2] for d in new_lst[3]]
Out[5]:
[[1, 2, 4, 5],
[1, 2, 4, 6],
[1, 2, 4, 7],
[1, 3, 4, 5],
[1, 3, 4, 6],
[1, 3, 4, 7]]
数据很大时链表解析步骤的编写会较为繁琐 应当改用itertools模块来做全排列
2015年08月25日 16点08分