概述
Python语言中的集合类型与数学中的集合概念一致,即包含0个或多个数据项的无序组合。集合是无序组合,用大括号{}表示,它没有索引和位置的概念,集合中的元素可以动态增加或删除。
集合中的元素不可重复,元素类型只能是不可变数据类型,例如整数、浮点数、字符串、元组等,相比较而言,列表、字典和集合类型本身都是可变数据类型,不能作为集合中的元素出现。
注意事项:
-
由于集合元素是无序的,集合的输出顺序与定义顺序可以不一致。
-
由于集合元素独一无二,使用集合类型能够过滤掉重复元素。
-
由于集合元素是无序的,所以集合元素间没有顺序,不能比较,不能排序。
-
创建集合直接使用{}。
尽管集合中的元素是不可重复的,但是集合元素在输入时是不受限制的。元素在输入集合后会自动去重。
集合操作符
集合类型的操作符 | |
---|---|
操作符及运算 | 描述 |
S-T | 返回一个新集合,包括在集合S中但不在集合T中的元素 |
S&T | 返回一个新集合,包括同时在集合S和T中的元素 |
S^T | 返回一个新集合,包括集合S和T中非共同元素 |
S|T | 返回一个新集合,包括集合S和T中所有元素 |
集合操作函数
集合类型常用的操作函数或方法 | |
---|---|
函数或方法 | 描述 |
s.add(x) | 如果数据项x不在集合s中,将x增加到s |
s.remove(x) | 如果数据项x在集合s中,移除该元素,不在则产生KeyError的异常 |
s.clear() | 移除s中所有数据项 |
len(s) | 返回集合s的元素个数 |
x in s | 如果x是s的元素,返回True,否则返回False |
x not in s | 如果x不是s的元素,返回True,否则返回False |
set(x)函数将其他的组合数据类型变成集合类型,返回结果是一个无重复且排序任意的集合。set()函数也可以生成空集合变量。
其中,set()表示空集合。
集合类型主要用于元素去重,适合于任何组合数据类型。