ホームページ  >  記事  >  バックエンド開発  >  Python でリストの差分を計算する方法は何ですか?

Python でリストの差分を計算する方法は何ですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-10-23 11:53:01493ブラウズ

What are the Methods to Compute List Differences in Python?

リストの違いを計算する方法

2 つのリスト x と y の違いを判断するには、Python で使用できるいくつかのアプローチがあります。

リスト内包表記の使用

x 内の要素の順序を保持するには、リスト内包表記を使用できます。

<code class="python">[item for item in x if item not in y]</code>

この式は、新しい

集合差分の使用

順序が重要でない場合は、集合差分を使用できます。

<code class="python">list(set(x) - set(y))</code>

🎜>

このアプローチでは、x と y の両方をセットに変換し、差を計算し、結果をリストに変換します。

クラス メソッドのオーバーライド

中置減算構文 (x - y など) を有効にするには、リストから継承するクラスの

sub
<code class="python">class MyList(list):
    def __init__(self, *args):
        super(MyList, self).__init__(args)

    def __sub__(self, other):
        return self.__class__(*[item for item in self if item not in other])

x = MyList(1, 2, 3, 4)
y = MyList(2, 5, 2)
z = x - y  # Infix subtraction syntax</code>
メソッドをオーバーライドできます。

このシナリオでは、z y にない x の要素のみが含まれます。

以上がPython でリストの差分を計算する方法は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。