python中集合用什么表示_python中集合用法大全

序言:

集合中各元素间是无序的,相同元素在集合中唯一存在。即 集合是无序组合,它没有索引和位置的概念,但可变集合中的元素是可以动态增加或删除的。

集合应用场景:

去重:如列表  去重。

关系测试:判断数据是否存在 交集,并集,差集  等关系。

集合的类型:

可变集合 —— set

不可变集合 —— frozenset

注:本文重点讨论的是可变集合set

————————————————

python中可变集合set和不可变集合frozenset的区别链接

1.0 set()函数

描述:可以将其它的组合数据类型转化为可变集合类型(或将不可变的集合类型frozenset转变为可变的集合类型set),返回一个无重复元素且排序任意的可变集合。

语法: set() -> new empty set object  返回一个空集合(该集合可变)

set(iterable) -> new set object  返回一个新集合(该集合可变)

iterable —— 要转换的组合数据类型。

注:s = {} 生成的是字典类型,而不是集合类型。

程序示例①:

s1 = set() #创建一个空集合。

l = [1.23,"a"] #列表类型

d = {1:"a",2:"b"} #字典类型

a = (1,2,"b") #元组类型

s = "厉害了,我的国" #字符串

#将列表,字典,元组,字符串转化为集合

s2 =set(s)

s3=set(l)

s4=set(d)

s5=set(a)print(s1)print(s2)print(s3)print(s4)print(s5)

程序运行结果:

set()

{'了', '的', '厉', '害', '国', ',', '我'}

{'a', 1.23}

{1, 2}

{1, 2, 'b'}

程序示例②:

d = {} #创建的是字典类型,空字典

s = set() #创建可变空集合

a = {1,2,3,"a"} #默认为可变集合

b = set("1,2,3") #与a语句等效

c1 = frozenset() #创建空的不可变集合,该集合不能添加任何元素。

c2 = frozenset("1,2,3") #不可变集合,集合中元素不能增加或删除。

print(type(d),type(s),type(a),type(b),type(c1),type(c2))

f= frozenset(a) #将可变集合a转换为不可变集合f

print(f,type(f))

s1= set(c2) #将不可变集合c2转换为可变集合s1

print(s1,type(s1))

程序运行结果:

frozenset({'a', 1, 2, 3}) {'2', '3', ',', '1'}

2.0 add()函数

描述:如果集合s中不存在元素x,则将元素x添加到集合s中。

语法:s.add(x)

x —— 要添加的元素。集合s已经存在元素x,也不会报错。

程序示例:

s = {1,2,"a"}

s.add("ab") #将字符串"ab"添加到集合s中

s.add(1) #集合s已存在元素 1 ,但不会报错

s.add("z") #将单字符"z"添加到集合s中

print(s)

程序运行结果:

{'a', 1, 2, 'z', 'ab'}

3.0 clear()函数

描述:删除集合s中的所有元素。

语法:s.clear()

程序示例:

s = {1,2,3,"a","bn"}

s.clear() #删除集合s所有元素

print(s)

程序运行结果:

set()

4.0 copy()函数

描述:复制生成一个新的集合。

语法 s.copy()

程序示例:

s = {1,2,3,"a","bc"}

s1 = s.copy() #复制集合s

s.add(789) #向原集合添加元素 789

s1.add("opq") #向复制集合s1添加元素 “opq”

#结果都互不干扰

print(s)

print(s1)

程序运行结果:

{1, 2, 3, 'a', 789, 'bc'}

{1, 2, 3, 'a', 'opq', 'bc'}

5.0 discard()函数

描述:移除集合s中的value元素。若value元素存在,则移除,不存在也不报错。

语法:s.discard(value)

value —— 要删除的元素

程序示例:

s = {1,2,3,4,5,"a","ab","h"}

s.discard(1) #移除元素 1

s.discard("ab") #移除元素 "ab"

s.di

你可能感兴趣的:(python中集合用什么表示)