博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Python学习——集合
阅读量:5042 次
发布时间:2019-06-12

本文共 2090 字,大约阅读时间需要 6 分钟。

集合(set):确定的无序的一组数据就是集合。集合无特定的标识符号)

  特点:

  • 集合中的值不会重复(唯一)
  • 集合中的元素没有任何顺序
  • 集合中可以使用整数,浮点数,布尔值,复数,字符串,元组,冰冻集

集合的基本操作

  1.创建空集合

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

  2.具有数据的集合

    varset = { ‘A’,‘B’,‘C’ }

  3.集合成员检测

    print(‘A’ in var)

集合推导式

  创建一个集合varset = { ‘A’,‘B’,‘C’ }

  1.基本的集合推导式

    print({'*' + i + '*' for i in varset})

  2.带有判断条件的集合推导式

    print({'*' + i + '*' for i in varset if i != 'A'})

  3.多循环集合推导式

    print({ c + str(s) for c in colors  for s in sizes})

 

集合函数

  创建一个列表

    var = set()

  1.add()向集合中添加元素

    var.add('A')

  2.pop()随机删除集合中的一个元素

    var.pop()

  3.remove()删除集合中的指定元素,弱元素不从在就会报错

    var.remove('A')

  4.discard()删除集合中指定的元素,若元素不存在时,啥都不做

    var.disvard('E')

  5.clear()清空集合

    var.clear()

  6.copy()复制集合

    new_var = var.copy()

 

集合处理

  假设定义俩个集合var1和var2

  1.difference()计算俩个集合的差集

    print(var1.difference(var2))     #输出var1集合和var2集合的交集

  2.different_update()  俩个集合的差集更新操作,将差集赋值给前一个集合

    var1.difference_update(var2)    ------> print(var1)

  3.union()集合的并集操作

    print(var1.union(var2))     #输出俩个集合的并集

  4.update()并集的跟新操作

    var1.update(var2)    #将俩个集合的并集更新至var1集合中

  5.intersection()计算俩个集合的交集

    print(var1.intersection(var2))

  6.intersection_update()更新并集操作

    var1.intersection_update(var2)    #将俩个集合的交集赋值给var1集合

集合判断操作

  1.issupperset()检测当前集合是否是另一个集合的超级

    print(var1.issupperset(var2))    #检测集合var1是否是var2集合的超级

  2.issubset()检测当前集合是否是另一个集合的子集

    print(var1.issubset(var2))     #检测集合var1是否是集合var2的子集

  3.isdisjoint()检测俩集合是否不存在交集

    print(var1.isdisjoint(var2))   

  4.symmetric_difference()   集合的对称差集

    print(var1.symmetric_difference(var2))

  5.symmetric_difference_update() 更新集合的对称差集

    var1.symmetric_difference_update(var2)

  

冰冻集合

定义:冰冻集合是一种特殊的集合类型,(集合是列表的话,冰冻集合就是列表)

1.创建空的冰冻的集合     ——> var = frozenset()

2.带有数据的冰冻集合   ——>var = frozenset(('A','B','C'))

3.成员检测  ——>print('A' in var)

4.遍历冰冻集合    ——>  for x in var:

5.集合推导式(结果无法得到冰冻集合,可得到集合,列表,元组,字典等)

    res  = {i  for  i  in  var}

 

集合函数

1.冰冻集合可以使用集合的函数,前提是不能修改集合本身,如copy()

2.集合的交集,并集,差集等都可以使用,前提是不能修改集合数据

注:冰冻集合和普通集合求并集会得到一个冰冻集合,普通集合和冰冻集合求并集会得到一个普通集合

 

 

 

 

#注:此文件解释权归自身拥有,若有疑问可邮件咨询:yuxiang000@foxmail.com

转载于:https://www.cnblogs.com/yuxiang-qiwa/p/7819845.html

你可能感兴趣的文章
一个样例看清楚JQuery子元素选择器children()和find()的差别
查看>>
代码实现导航栏分割线
查看>>
Windows Phone开发(7):当好总舵主 转:http://blog.csdn.net/tcjiaan/article/details/7281421...
查看>>
VS 2010打开设计器出现错误
查看>>
SQLServer 镜像功能完全实现
查看>>
Vue-详解设置路由导航的两种方法
查看>>
一个mysql主从复制的配置案例
查看>>
大数据学习系列(8)-- WordCount+Block+Split+Shuffle+Map+Reduce技术详解
查看>>
dvwa网络渗透测试环境的搭建
查看>>
Win8 安装VS2012 和 Sql Server失败问题
查看>>
过点(2,4)作一直线在第一象限与两轴围成三角形,问三角形面积的最小值?...
查看>>
java aes CBC的填充方式发现
查看>>
使用ionic cordova build android --release --prod命令打包报有如下错误及解决方法
查看>>
BZOJ 2338 HNOI2011 数矩形 计算几何
查看>>
关于页面<!DOCTYPE>声明
查看>>
【AS3代码】播放FLV视频流的三步骤!
查看>>
C++标准库vector使用(更新中...)
查看>>
cocos2d-x 2.2.6 之 .xml文件数据读取
查看>>
枚举的使用
查看>>
BZOJ 1531 二进制优化多重背包
查看>>