集合——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. ZTree 获取选中的项,jQuery radio的取值与赋值

    $("input[name='Sex']:checked").val();//取值 $("input[name='radioName'][value=2]"). ...

  2. go反射实例

    需求分析: 如在rocketmq的网络通信中,所有通信数据包以如下形式传输: (注:rocketmq的java结构体,这里使用了go形式表示) type RemotingCommand struct ...

  3. 【2018沈阳赛区网络预选赛J题】Ka Chang【分块+DFS序+线段树】

    题意 给出一个有根树(根是1),有n个结点.初始的时候每个结点的值都是0.下面有q个操作,操作有两种,操作1.将深度为L的点的值全部增加X.操作2.查询以x为根的子树的结点值得和. 其中N,Q< ...

  4. 【POJ2151】Check the difficulty of problems

    题意 某场比赛有M道问题,T支队伍,和数字N给出每支队伍解决每道问题的概率. 问这场比赛满足下面两个条件的概率 1.每支队伍至少做出一道题 2.冠军队至少做出N道题. 分析 条件2是不是可以转化为 至 ...

  5. c# 遍历一个对象里面的全部属性

    比如我现在有一个Student的对象,里面有属性stuName,stuAge,stuGender,我现在该怎么写循环才能遍历这几个属性? Student s=new...... foreach (Sy ...

  6. DBArtist之Oracle入门第1步: 如何安装Oracle 11g

    操作系统:  Windows 7 数据库   :  Oracle 11gR2 第一步: 下载Oracle安装包 Oracle官网:  https://www.oracle.com/index.html ...

  7. 钉钉开发笔记(5)android系统中html软键盘的适配

    最近项目中发现个别Android手机中存在弹出的软键盘会遮挡输入框的现象,最后自己写了一个方法(如下),问题基本解决. 记录下来,防止忘记.有什么不对的地方欢迎指正.O(∩_∩)O 1 //键盘适配 ...

  8. 从零开始安装hue(原创-转载注明出处)

    hue安装需要从github上面下载源码,进行编译安装.github上面给出的安装教程很简单 然而实际上在安装的过程中遇到了无数个坑,下面开始真正意义上的从零开始安装hue. 安装环境: centOS ...

  9. Windows环境下搭建MosQuitto服务器

    Windows环境下搭建MosQuitto服务器 2018年04月16日 22:00:01 wistronpj 阅读数:1185  摘自:https://blog.csdn.net/pjlxm/art ...

  10. nuget get-package id显示不全

    Get-Package | ft -AutoSize 参考 https://stackoverflow.com/questions/5036719/is-there-a-way-to-get-the- ...