【发布时间】:2016-06-09 13:32:18
【问题描述】:
使用itertools 工具,我拥有给定数字列表的所有可能排列,但如果列表如下:
List=[0,0,0,0,3,6,0,0,5,0,0]
itertools 不“知道”迭代零是浪费工作,例如以下迭代将出现在结果中:
List=[0,3,0,0,0,6,0,0,5,0,0]
List=[0,3,0,0,0,6,0,0,5,0,0]
它们是相同的,但 itertools 只取第一个零(例如)并将其移动到列表中的第四位,反之亦然。
问题是:我怎样才能只迭代一些选定的数字而不管其他数字,比如零?它可以有或没有itertools。
【问题讨论】:
-
使用类似
output2 = list(set(output))的东西,其中output是你从itertools得到的。 -
我需要在列表中的所有位置迭代一些数字,只留下零。
-
你来了。 (我的新方法,第三种方法,答案)
标签: python list permutation