我有一個序列列表,比如:seq = [(1,2,3,4) , (1,2,4,3) (1,3,2,4) (1,3,4,2)]
,等等。。
另一個列表包含索引的元組(index , value)
及其相應的值,例如pos = [(3 , 4) , (1 , 2)]
(在索引3處,必須有一個4。索引必須在1)處。
我如何過濾seq列表,刪除所有在pos
列表中對應索引處沒有值的元組。例如,如果我有上面的seq和pos變量,結果將是:[(1,2,3,4)]
,因為它是唯一一個在索引1中有2,在索引3中有4的序列。
可能我沒試過,但最快的方法是:
for i in range(len(seq)):
for j in range(len(seq)):
for x in range(len(pos)):
if j == pos[x][0] and seq[i][j] == pos[x][1]:
res.append(temp[i])
您可以使用
all
函數(shù):