看不到代码请重新刷新此页面

集合

Python中的集合和数学中的集合概念一样,存储不重复的元素

集合中的元素都是唯一的,互不相同的。

集合中只能存储不可变的数据:数字、字符串、元组

Python用{}表示集合,其中的元素用逗号分隔

Python集合是无序的

集合----创建集合

1、创建集合的方式{集合1,集合2,集合3,集合4}:把大括号中的所有元素构造成一个集合,如果有重复元素,只保留一个

2、{}:这是空字典,不是空集合

3、set(x):把x转换成集合,x一般为列表、元组等

4、set():空集

s = {1,2,3,5,6,7,8,9}
print("type(s1) = ",type(s))
print("s1 = ",s)
print(100*'-')
a = ['a','b','c']
s = set(a)
print("type(s2) = ",type(s))
print("s2 = ",s)
print(100*'-')
key = ['a','b','c']
value = [123,456,789]
dic = dict(zip(key,value))
print("dic = ",dic)
print(100*'-')
s = set(dic)
print("s3 = ",s)
print(100*'-')
s = set(dic.values())
print("s4 = ",s)
print(100*'-')
s = set(dic.items())
print("s5 = ",s)

输出

type(s1) =  <class 'set'>
s1 =  {1, 2, 3, 5, 6, 7, 8, 9}
----------------------------------------------------------------------------------------------------
type(s2) =  <class 'set'>
s2 =  {'b', 'a', 'c'}
----------------------------------------------------------------------------------------------------
dic =  {'a': 123, 'b': 456, 'c': 789}
----------------------------------------------------------------------------------------------------
s3 =  {'b', 'a', 'c'}
----------------------------------------------------------------------------------------------------
s4 =  {456, 123, 789}
----------------------------------------------------------------------------------------------------
s5 =  {('c', 789), ('a', 123), ('b', 456)}

集合----遍历集合

与遍历list一样,for x in a:其中a是set,x是循环变量

s.clear():清空集合

x in s:判断是否存在

len(s):集合元素个数

s = {1,2,3,4}
for x in s:
    print(x)
print(sum(s),max(s),min(s))

输出

1
2
3
4
10 4 1

集合基本操作

s = set()
s.add(1)
s.add(2)
s.add(3)
t = {2,3,4}
print("s = ",s)
print("t = ",t)
print(100*'-')
s.update(t)
print("s = ",s)
print("t = ",t)
print(s.issuperset(t))
print(100*'-')
s.remove(1)
s.remove(3)
print("s = ",s)
print("t = ",t)
print(s.issubset(t))

输出

s =  {1, 2, 3}
t =  {2, 3, 4}
----------------------------------------------------------------------------------------------------
s =  {1, 2, 3, 4}
t =  {2, 3, 4}
True
----------------------------------------------------------------------------------------------------
s =  {2, 4}
t =  {2, 3, 4}
True

s = {1,2,3}
t = {2,3,4}
print("并集 =",s.intersection(t))
print("交集 =",s.union(t))
print("差集 = ",s.difference(t))
print("对称差集 = ",s.symmetric_difference(t))

输出

并集 = {2, 3}
交集 = {1, 2, 3, 4}
差集 =  {1}
对称差集 =  {1, 4}

a = list(map(int,input().split)))

a = list(map(int,input().split()))
s = set(a)
print(len(s))
1 2 3 4 5 1 2 3 4
5