集合——set的定义:test = {1,2,3,4,5} 或 test = frozenset(1,2,3,4,5)

特点:1. 集合是可变数据类型

2. 集合中元素是无序的,可以是数字、字符串与元组等不可变数据类型

   3. 通过test = {1,2,3,4,5}方法定义的是可变集合;通过test = frozenset(1,2,3,4,5)方法定义的是不可变集合

1. 将指定元素添加到集合中

 test = {1,2,3,4,5}
test.add(8)
print(test) """
运行结果:{1, 2, 3, 4, 5, 8}
结果分析:将元素8添加到集合test中
"""

2. 拷贝集合中元素

 test = {1,2,3,4,5}
v = test.copy()
print(v) """
运行结果:{1, 2, 3, 4, 5}
结果分析:将集合test中所有元素拷贝并赋值给v
"""

3. 删除集合中指定元素;当该元素不存在时,返回错误信息

 test = {1,2,3,4,5}
test.remove(3)
print(test) """
运行结果:{1, 2, 4, 5}
结果分析:删除集合test中值为3的元素
"""

4. 删除集合中指定元素;当该元素不存在时,不做任何处理

 test = {1,2,3,4,5}
test.discard(3)
print(test)
print("--"*20) test.discard(8)
print(test)
"""
运行结果:
{1, 2, 4, 5}
----------------------------------------
{1, 2, 4, 5}
结果分析:
删除集合中值为3的元素;
由于集合中不存在值为8的元素,所以不做任何处理,集合中元素不变
"""

5. 随机删除并返回集合中某一元素

 test = {1,2,3,4,5}
v = test.pop()
print(test)
print(v) """
运行结果:
{2, 3, 4, 5}
1
结果分析:随机删除集合中某一元素,并将该元素值返回给变量v
"""

6. 清空集合中元素

 test = {1,2,3,4,5}
test.clear()
print(test) """
运行结果:set()
结果分析:清空集合中所有元素,得到一个空白集合
"""

7. 集合交运算

 s1 = {1,2,3,4,5}
s2 = {1,3,5,7,9}
test = s1.intersection(s2) #或test = s1 & s2
print(test) """
运行结果:{1, 3, 5}
结果分析:计算集合s1和s2的交集
"""

8. 集合并运算

 s1 = {1,2,3,4,5}
s2 = {1,3,5,7,9}
test = s1.union(s2) #或test = s1 | s2
print(test) """
运行结果:{1, 2, 3, 4, 5, 7, 9}
结果分析:计算集合s1和s2的并集
"""

9. 集合差运算

 s1 = {1,2,3,4,5}
s2 = {1,3,5,7,9}
test = s1.difference(s2) #或test = s1 - s2
print(test) """
运行结果:{2, 4}
结果分析:计算集合s1和s2的差集
"""

10. 集合交叉补集运算

 s1 = {1,2,3,4,5}
s2 = {1,3,5,7,9}
test = s1.symmetric_difference(s2) #或test = s1 ^ s2
print(test) """
运行结果:{2, 4, 7, 9}
结果分析:计算集合s1和s2的交叉补集(相当于从两集合的并集中减去两集合交集)
"""

11. 求集合交集,并将运算结果赋予源集合

 s1 = {1,2,3,4,5}
s2 = {1,3,5,7,9}
s1.intersection_update(s2)
print(s1,s2) """
运行结果:{1, 3, 5} {1, 3, 5, 7, 9}
结果分析:计算集合s1和s2的交集,并将运算结果赋予集合s1,集合s2保持不变
"""

12. 求集合差集,并将运算结果赋予源集合

 s1 = {1,2,3,4,5}
s2 = {1,3,5,7,9}
s1.difference_update(s2)
print(s1,s2) """
运行结果:{2, 4} {1, 3, 5, 7, 9}
结果分析:计算集合s1和s2的差集,并将运算结果赋予集合s1,集合s2保持不变
"""

13. 求集合交叉补集,并将运算结果赋予源集合

 s1 = {1,2,3,4,5}
s2 = {1,3,5,7,9}
s1.symmetric_difference_update(s2)
print(s1,s2) """
运行结果:{2, 4, 7, 9} {1, 3, 5, 7, 9}
结果分析:计算集合s1和s2的交叉补集,并将运算结果赋予集合s1,集合s2保持不变
"""

14. 判断两集合是否存在交集

 s1 = {1,2,3,4,5}
s2 = {1,3,5,7,9}
print(s1.isdisjoint(s2)) """
运行结果:False
结果分析:
若两集合不存在交集或其交集为空,则返回True
若两集合存在交集或其交集非空,则返回False
"""

15. 判断两集合是否满足s1<=s2

 s1 = {1,2,3,4,5}
s2 = {1,2,3,4,5,6,7,8,9}
print(s1.issubset(s2)) """
运行结果:True
结果分析:若两集合满足s1<=s2,即集合s1为s2的子集,则返回True;否则返回False
"""

16. 判断两集合是否满足s1>=s2

 s1 = {1,2,3,4,5,6,7,8,9}
s2 = {1,2,3,4,5}
print(s1.issuperset(s2)) """
运行结果:True
结果分析:若两集合满足s1>=s2,即集合s1为s2的"父"集,则返回True;否则返回False
"""

17. 更新集合元素

 s1 = {1,2,3,4,5,6,7,8,9}
s2 = {1,2,3,4,5}
s2.update(s1)
print(s2) """
运行结果:{1, 2, 3, 4, 5, 6, 7, 8, 9}
结果分析:将集合s1的各个元素更新到集合s2中,相当于s1=s2
"""

day02.5-集合内置方法的更多相关文章

  1. 元组/字典/集合内置方法+简单哈希表(day07整理)

    目录 二十三.元组内置方法 二十四.字典数据类型 二十五 集合内置方法 二十五.数据类型总结 二十六.深浅拷贝 补充:散列表(哈希表) 二十三.元组内置方法 什么是元组:只可取,不可更改的列表 作用: ...

  2. python之字符串,列表,字典,元组,集合内置方法总结

    目录 数字类型的内置方法 整型/浮点型 字符串类型的内置方法 列表的内置方法 字典的内置方法 元组的内置方法 集合类型内置方法 布尔类型 数据类型总结 数字类型的内置方法 整型/浮点型 加 + 减 - ...

  3. day02.4-字典内置方法

    字典——dict的定义:test = {"k1":18,2:True,"k3":[11,22,("zi","zai")] ...

  4. day02.2-列表内置方法

    列表——list的定义:test = [1,12,9,"age",["zizai","jiapu"],"alex"] 特 ...

  5. python中的集合内置方法小结

    #!/usr/local/bin/python3 # -*- coding:utf-8 -*- #集合性质:需要传入一个list,且不含重复的元素,无序 list_1=[1,2,1,4,5,8,3,4 ...

  6. day02.3-元组内置方法

    元组——tuple的定义:test = (11,"alex",(22,33),[44,55],True) 特点:1. 元组是可迭代对象 2. 元组中元素是有序的,但其不可修改,也不 ...

  7. Python内置方法详解

    1. 字符串内置方法详解 为何要有字符串?相对于元组.列表等,对于唯一类型的定义,字符串具有最简单的形式. 字符串往往以变量接收,变量名. 可以查看所有的字符串的内置方法,如: 1> count ...

  8. Python-集合数据类型内置方法

    集合内置方法(必考) 用途:用于关系运算的集合体,由于集合内的元素无序且集合元素不可重复,因此集合可以去重,但是去重后的集合会打乱原来元素的顺序. 定义方式:{}内用逗号隔开多个元素,元素只能是不可变 ...

  9. Python 数据类型常用的内置方法(三)

    目录 Python 数据类型常用的内置方法(三) 1.列表内置方法 1.sort():升序 2.reverse():颠倒顺序 3.列表比较运算 2.字典内置方法 1.对Key的操作 2.len( )- ...

随机推荐

  1. 增强MyEclipse提示功能

    当我们使用MyEclipse编辑代码的时候按住“Ctrl+/”,就能获得代码提示,或者使用“.”的时候就会“点”出属性或方法等,而且提示还会有延迟. 如果我们想无论是按下“.”.“Ctrl+/”甚至是 ...

  2. linux服务器中Apache隐藏index.php失败

    可以通过URL重写隐藏应用的入口文件index.php,下面是相关服务器的配置参考: [Apache] httpd.conf配置文件中加载了mod_rewrite.so模块 AllowOverride ...

  3. Python实现阿里云短信推送

    本篇文章是使用Python的Web框架Django提供发送短信接口供前端调用,Python版本2.7 阿里云入驻.申请短信服务.创建应用和模板等步骤请参考:阿里云短信服务入门 1.下载sdk 阿里云短 ...

  4. 你不知道的高性能Javascript

    想必大家都知道,JavaScrip是全栈开发语言,浏览器,手机,服务器端都可以看到JS的身影. 本文会分享一些高效的JavaScript的最佳实践,提高大家对JS的底层和实现原理的理解. 数据存储 计 ...

  5. 全文搜索技术—Solr

    1.   学习计划 1. Solr的安装及配置 a)    Solr整合tomcat b)    Solr后台管理功能介绍 c)    配置中文分析器 2. 使用Solr的后台管理索引库 a)     ...

  6. Transform & Physics

    [Transform & Physics] 1.Space.Unity定义了Space枚举值,此值如下: 通常通过Space.World.Space.Self来区别一个Vector是按世界坐标 ...

  7. Mysql 查询今天的某些时间之外的数据

    SELECT * FROM `attendancealert` WHERE DATE_FORMAT(FROM_UNIXTIME(UNIX_TIMESTAMP(`AlertTime`)),'%Y-%m- ...

  8. fastdfs 有用 新增tracker或storage

    FastDFS是一个开源的轻量级分布式文件系统,它对文件进行管理,功能包括:文件存储.文件同步.文件访问(文件上传.文件下载)等,解决了大容量存储和负载均衡的问题.特别适合以文件为载体的在线服务,如相 ...

  9. [C++] * Basic and Class

    C++ 目  录 1 开始学习C++ 4 1.1 C++的头文件 4 1.2 命名空间 4 1.3 更严格的类型转化 4 1.4 new和delete 4 1.5 内联函数 4 1.6 引用 5 1. ...

  10. Red Hat 6.5 网络yum源的配置

    第一次接触Linux系统,用虚拟机安装了一个rad hat6.5版本64位的,傻瓜式安装.安装好之后简单的写了一个C代码,进行gcc编译的时候,提示没有该命令,上网查找了一下说没有安装gcc编译器,用 ...