私はfound
とallowed
という2つのデータセットを持っています。 found
の観測値のいずれかがallowed
に表示されていないかどうかを確認したいので、許可されていないとフラグを立てるようにしてください。リストの理解に欠けている値と書き込みループの比較
found = [["A", "B", "C"], [10, 20, 30], ["X", "Y", "Z"]]
allowed = [["A", "B", "C", "D"], [20, 30, 40], ["W", "X", "Y"]]
私は次のことを実行する場合、私は少数の行を必要と以下のように、実行して、私はより簡単だと思う場合は、それがnew_values = [(2, 'Z')]
を返し[(1, 10), (2, 'Z')]
new_values = []
for x in range(0, len(allowed)):
for val in found[x]:
if val not in allowed[x]:
new_values.append((x, val))
で正しい答えを取得
for x in range(0, len(allowed)):
new_values = [(x, val) for val in found[x] if val not in allowed[x]]
(1, 10)
はどうなりましたか? 10 in allowed[1]
を実行した場合、False
と表示され、new_values
に掲載されているはずです。
複数の 'found'に非許可がある場合、どのようなデータ構造、あなたが期待しますか? – schwobaseggl
上記のように、正解は '[(1,10)、(2、 'Z')]' –