Python数据类型之Set集合实例详解

 更新时间:2019年05月07日 10:22:42   作者:微信1257309054  
这篇文章主要介绍了Python数据类型之Set集合,结合实例形式详细分析了Python数据类型中集合的概念、原理、创建、遍历、交集、并集等相关操作技巧,需要的朋友可以参考下

本文实例讲述了Python数据类型之Set集合。分享给大家供大家参考,具体如下:

set集合

1.概述

set与dict类似,但set是一组key的集合,与dict的区别在于set不存储value。

本质:无序且无重复元素的集合(具有自动去重的功能)。

2.set的创建

语法:

set1 = set([1, 2, 3, 4, 5])

注意:创建set需要一个list或者tuple或者dist作为输入集合,重复的元素在set中会被自动的过滤

s1 = set([1, 2, 3, 4, 5])
print(s1)

输出:

{1, 2, 3, 4, 5}

3.set操作

3.1 set.add()

1.可以添加重复的元素,但是不会有效果

2.add 的元素不能是列表或者字典,因为他们是可变的

s1 = set([1, 2, 3, 4, 5])
s1.add(6)
s1.add((2, 3, 4))
print(s1)

结果

{1, 2, 3, 4, 5, 6, (2, 3, 4)}

3.2 set.update()

功能:插入整个list、tuple、字符串打碎插入

注意:不能直接插入数字。

s1 = set([1, 2, 3, 4, 5])
s1.update([4,"anam","hha"])
s1.update("hello")
print(s1)

结果

{1, 2, 3, 4, 5, 'anam', 'l', 'o', 'h', 'e', 'hha'}

3.3 set.remove(元素)

功能:删除元素

s1 = set([1, 2, 3, 4, 5])
s1.remove(3)
print(s1)

输出:

{1, 2, 4, 5}

3.4 遍历元素

语法:

for i in set :
print(i)

注意:set是无序的,因此不能通过下标获取元素。

for index, data in enumerate(set):
  print(index, data)

可以通过这种方式,来强行添加下标

s1 = set([1, 2, 3, 4, 5])
for i in s1:
  print(i)
for index,data in enumerate(s1):
  print(index, data)

输出:

1
2
3
4
5
0 1
1 2
2 3
3 4
4 5

3.5 交集与并集

语法:

交集 newest = set1 & set2
并集 newest = set1 | set2

s1 = set([1, 2, 3, 4, 5])
s2 = set([4, 5, 6, 7])
s3 = s1 & s2
s4 = s1 | s2
print(s3)
print(s4)

结果

{4, 5}
{1, 2, 3, 4, 5, 6, 7}

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python函数使用技巧总结》、《Python列表(list)操作技巧总结》、《Python字典操作技巧汇总》、《Python数据结构与算法教程》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程

希望本文所述对大家Python程序设计有所帮助。

相关文章

  • Python调用SQLPlus来操作和解析Oracle数据库的方法

    Python调用SQLPlus来操作和解析Oracle数据库的方法

    这篇文章主要介绍了Python调用SQLPlus来操作和解析Oracle数据库的方法,这样用SQL*Plus方式来分析Oracle中的数据就变得十分方便,需要的朋友可以参考下
    2016-04-04
  • pytorch 如何用cuda处理数据

    pytorch 如何用cuda处理数据

    考虑到各种运算只能在cpu或者gpu运算,不能混和运算,本文介绍常用的几种把数据挪到gpu或者直接在gpu创建数据再进行运算的方法
    2021-06-06
  • Python实现批量下载文件

    Python实现批量下载文件

    之前给大家分享的python 多线程抓取网页,不过这个只能用python 来抓取到网页的源代码,如果你想用做python 下载文件的话,上面的可能就不适合你了,最近我在用python 做文件下载的时候就遇到这个问题了,不过最终得以解决,我把代码发出来
    2015-05-05
  • python Airtest自动化测试工具的的使用

    python Airtest自动化测试工具的的使用

    本文主要介绍了python Airtest自动化测试工具的的使用,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-02-02
  • python flask之模板继承方式

    python flask之模板继承方式

    这篇文章主要介绍了python flask之模板继承方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-03-03
  • VSCode配合pipenv搞定虚拟环境的实现方法

    VSCode配合pipenv搞定虚拟环境的实现方法

    这篇文章主要介绍了VSCode配合pipenv搞定虚拟环境的实现方法,文中通过图文教程介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-05-05
  • 浅析Python 责任链设计模式

    浅析Python 责任链设计模式

    这篇文章主要介绍了Python 责任链设计模式的相关资料,帮助大家更好的理解和学习python 设计模式,感兴趣的朋友可以了解下
    2020-09-09
  • 关于python之字典的嵌套,递归调用方法

    关于python之字典的嵌套,递归调用方法

    今天小编就为大家分享一篇关于python之字典的嵌套,递归调用方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-01-01
  • Python中的Dataset和Dataloader详解

    Python中的Dataset和Dataloader详解

    这篇文章主要介绍了Python中的Dataset和Dataloader详解,DataLoader与DataSet是PyTorch数据读取的核心,是构建一个可迭代的数据装载器,每次执行循环的时候,就从中读取一批Batchsize大小的样本进行训练,需要的朋友可以参考下
    2023-07-07
  • python多维数组分位数的求取方式

    python多维数组分位数的求取方式

    这篇文章主要介绍了python多维数组分位数的求取方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-03-03

最新评论