我有一个清单:
mylist=[[1,2],[2,3,5],[1,3],[5,8,6],[5,9],[4],[7],[6,8,9],[4,9,8,6]]
它是数独的一行,每个列表代表每个案例的可能性。
我的目标是创建一个可以从5
删除mylist[1]
的函数;因为1
,2
和3
只能位于list[0]
或[1]
或[2]
。
我正在寻找提示
我想出了
def epure(dimension, length):
repeated=[i for sublist in [x for x in dimension if len(x)==length] for i in sublist]
repeated=list(set([x for x in repeated if repeated.count(x)==length]))
for n in dimension:
for item in repeated:
if item in n and len(n)!=length:
n.remove(item)
return dimension
但它失败了,我现在正在努力。