目的:求多个集合之前的并集,例如:现有四个集合C1 = {11, 22, 13, 14}、C2 = {11, 32, 23, 14, 35}、C3 = {11, 22, 38}、C4 = {11, 22, 33, 14, 55, 66},则它们之间的并集应该为:
C1 & C2 & C3 = {11}、C1 & C2 & C4 = {14}、C1 & C3 & C4 = {22}。如下图所示:
实现方法:Python自带了set数据类型,并且可以实现求集合的并集、交集、差集等,十分好用。按照一般的数学方法实现,实现的步骤如下:
(1)先求4个集合共有的成员;
(2)每个集合减去所有集合的共有成员,在求其中任意3个集合共有的成员;
(3)每个集合减去包含自己的任意三个集合的共有成员,最后求其中任意两个集合共有的成员。
具体的代码如下:
1 #encoding: utf-8
2
3 deffunc(content):4 #使用集合实现, 使用集合真是太方便了
5
6 c1 = set(content[0]) #[11, 22, 13, 14]
7 c2 = set(content[1]) #[11, 32, 23, 14, 35]
8 c3 = set(content[2]) #[11, 22, 38]
9 c4 = set(content[3]) #[11, 22, 33, 14, 55, 6