pythonの2つのリストの差、交差、およびセット

686 ワード

作業はデータの処理であるため、作業中に2つのリストを求める交差、差セット、並列セットなどの操作に遭遇することは避けられません.
まず、差セットを求める操作
a_list = [1, 2, 3, 4, 5]
b_list = [1, 4, 5]
ret_list = list(set(a_list)^set(b_list))
print(ret_list)

上記の方法で求めたのは対称差セットであり,2つのリストに同時に存在しない要素であるが,この方法で求めることもできる.
list(set(b).difference(set(a)))

この方法はbにありaにない値を求めるが,以上の2つの方法はいずれも差セットを求めるが,その違いを区別することに注意する.
パラレルと交差については何も言うことはありませんが、pythonの2つのよく使われる関数unionとintersectionです.もちろん数学の記号でも表すことができます.x & y  #   x | y  #   x -   #  
     ,           ,           !