首页 > 编程语言 >python中集合的常用方法和应用场景

python中集合的常用方法和应用场景

时间:2022-10-06 09:44:14浏览次数:82  
标签:场景 python s2 s1 打印 s4 print s3 集合

1.集合的常用方法
集合:无序的数据类型
添加顺序和在集合中的存储顺序是不一样的
1.增加

增加一个元素.add()
s = {6,7,8,9}
s.add(1)
print(s)
打印结果
{1, 6, 7, 8, 9}
增加一个集合.uppdate()
s = {6,7,8,9}
s.update({2,3,5})
打印结果
print(s)
{2, 3, 5, 6, 7, 8, 9}

 

2删除

.remove()删除
s = {6,7,8,9}
s.remove(6)
print(s)
打印结果
{8, 9, 7}
.pop()删除
s = {6,7,8,9}
s.pop()
print(s)
打印结果
{9, 6, 7}

3交集

s1 = {6,7,8,9}
s2 = {3,4,5,6}
print('交集:',s1.intersection(s2))  方法一
print('交集:',s1 & s2)         方法二
打印结果
交集: {6}
交集: {6}

4并集

s1 = {6,7,8,9}
s2 = {3,4,5,6}
print('并集:',s1.union(s2)) 方法一
print('并集:',s1 | s2) 方法二
打印结果
并集: {3, 4, 5, 6, 7, 8, 9}
并集: {3, 4, 5, 6, 7, 8, 9}

5差集

s1 = {6,7,8,9}
s2 = {3,4,5,6}
print('差集:',s1.difference(s2))  s1-(s1&s2)    方法一
print('差集:',s2.difference(s1))   s2-(s1&s2)  方法二
对等差分:并集减差集
print('对等差分:',s1.symmetric_difference(s2)) 方法一
print('对等差分:',s1^s2) 方法二
打印结果
差集: {8, 9, 7}
差集: {3, 4, 5}
对等差分: {3, 4, 5, 7, 8, 9}
对等差分: {3, 4, 5, 7, 8, 9}

6.超集

s3 = {1,2}
s4 = {1,2,3}
print(s3.issuperset(s4))  s3是s4的超集即s4是s3的子集,判断错误
print(s4.issuperset(s3))   s4是s3的超集即s3是s4的子集,判断正确
print(s3.isdisjoint(s4))   判断s3是s4的超集,判断错误
打印结果
False
True
False

7.应用场景
明明想在学校中请一些同学一起做一项问卷调查,为了实验的客观性
他先用计算机生成了N个1~1000之间的随机整数(N<=1000),N是用户输入的,
对于
其中重复的数字,只保留一个,把其余相同的数字去掉,不同的数对应着不>同的学生的学号,然后再把这

数从小到大排序,按照排好的顺序去找同学做调查,请你协助明明完成“去重
”与排序工作

import  random   引入随机函数
s = set([])   创建空集合
for i in range(int(input('N:'))):   循环遍历数值  使用int()函数即转换字符串为整型
    num =  random.randint(1,1001)     指定随机产生num个数值
    s.add(num)   添加到集合里面
print(sorted(s))   打印集合元素排序sorted()排序函数
打印结果
N:20
[44, 72, 104, 283, 305, 386, 400, 447, 496, 651, 678, 683, 755, 784, 797, 903, 934, 947, 981, 993]

 

标签:场景,python,s2,s1,打印,s4,print,s3,集合
From: https://www.cnblogs.com/mengdie1978/p/16757054.html

相关文章