このスクリプトは私が必要としているものには機能しますが、これを作成する方法を調査しているときに、これは間違った方法であるという多くのコメントを見つけました。私が見つけたコメントはあまり説明的ではなく、私のユースケースには当てはまらないようです。これが間違っているかどうか、またはその理由を特定することはできません。これを改善するにはどうすればよいですか?
myList1 = [1, 2, 3, 4, 5]
myList2 = [1, 3, 5]
myList3 = []
for i in myList1:
myList3.append(0)
for j in range(len(myList1)):
for k in range(len(myList2)):
if myList1[j] == myList2[k]:
myList3[j] = 1
print(myList3)
私の出力は私が望むものです:
[1, 0, 1, 0, 1]
したがって、myList3 を myList1 と同じ長さにし、それにゼロを入力します。
次に、myList1 と myList2 を比較し、一致するものがあれば、myList1 のその要素番号が何らかの値を受け取ります。
たぶん、これには何も問題はなく、答えが見つからないのは、それで問題ないからですか?