1. ホーム
  2. python

[解決済み] リストにない要素を探す

2023-07-27 19:25:01

質問

そこで、私のコードを紹介します。

item = [0,1,2,3,4,5,6,7,8,9]
z = []  # list of integers

for item in z:
    if item not in z:
        print item

z は整数のリストを含む。比較したい item まで z にない数字をプリントアウトします。 z に照らすと item .

にある要素を印刷することができるんだ。 z なくとも item しかし、上記のコードでその逆をやっても何も表示されません。

何かお手伝いできることはありますか?

どのように解決するのですか?

あなたのコードは、あなたが考えているようなことはしていません。行は for item in z: を繰り返し実行します。 z を繰り返し、その都度 item の一つの要素に等しくなる。 z . 元の item のリストは何もしないうちに上書きされます。

このようなものが欲しいのではないでしょうか。

item = [0,1,2,3,4,5,6,7,8,9]

for element in item:
    if element not in z:
        print(element)

というように簡単にできるのですが

[x for x in item if x not in z]

または(一意でない要素の重複を失っても構わないのであれば)。

set(item) - set(z)