Python 3 集合基础和概念!

Python 3中,集合是无序的,所以不能进行切片和索引操作。

创建集合有两个方法:set()方法创建的集合是可变的,可被迭代的;frozenset()方法创建的集合是不可改变的。

代码可以看出来,看上去创建的集合是一个列表,实际上我们用type()就可以看出,创建的是一个set对象,不懂的话可以大致理解为列表。

>>> a = set('hello')
>>> a
{'l', 'h', 'o', 'e'}

set()还支持add方法和update方法,两个对比一下,区别还是很明显的,add方法是把参数整个加入到集合中,update方法是把参数拆分然后加入到集合中:

>>> a = set('hello')
>>> a.add(',world')
>>> a
{'l', 'h', ',world', 'o', 'e'}

>>> a = set('hello')
>>> a.update('world')
>>> a
{'r', 'w', 'd', 'l', 'h', 'o', 'e'}

remove方法,删除指定的字符串:

>>> a = set('hello')
>>> a.remove('l')
>>> a
{ 'h', 'o', 'e'}

数学中常用的交集、并集、差集对集合来说也是适用的:

交集,返回的是变量a和变量b的共有部分:

>>> a = set('abcdef')
>>> b = set('bcdefh')
>>> a & b
{'f', 'd', 'b', 'c', 'e'}

并集,返回的是变量a和变量b去掉共有部分之后的剩余部分(因为a和b的值大部分是重复的,所以删除就是那部分重复的):

>>> a = set('abcdef')
>>> b = set('bcdefh')
>>> a | b
{'a', 'f', 'd', 'b', 'h', 'c', 'e'}

差集,返回的是a变量中有但是b变量中没有的部分:

>>> a = set('abcdef')
>>> b = set('bcdefh')
>>> a - b
{'a'}

set的去重功能,在c列表中,1和2是有重复的,所以我们把列表转化为集合之后,就会自动删除重复的部分(想转换回列表的话,直接list(set(c))就行了):

>>> c = [1,2,3,4,1,2]
>>> set(c)
{1, 2, 3, 4}

转载于:https://www.cnblogs.com/zdnyp/p/6545345.html

Python 3 集合基础和概念!相关推荐

  1. python类装饰器详解-Python装饰器基础概念与用法详解

    本文实例讲述了Python装饰器基础概念与用法.分享给大家供大家参考,具体如下: 装饰器基础 前面快速介绍了装饰器的语法,在这里,我们将深入装饰器内部工作机制,更详细更系统地介绍装饰器的内容,并学习自 ...

  2. 2021-03-12 Python基础核心概念 变量和简单数据类型

    Python基础核心概念 1 变量和简单数据类型 变量命名格式:变量名 = "赋值" 1.1 变量使用规范 使用变量时,需要遵守一些规则.违反这些规则将引发错误. ~变量名只能包含 ...

  3. Python frozenset 集合 - Python零基础入门教程

    目录 一.Python frozenset 集合语法 二.Python frozenset 集合使用 三.猜你喜欢 零基础 Python 学习路线推荐 : Python 学习目录 >> P ...

  4. Python set集合 - Python零基础入门教程

    目录 一.set 集合简介 二.set 集合常用函数 三.set 集合运算符 四.猜你喜欢 零基础 Python 学习路线推荐 : Python 学习目录 >> Python 基础入门 在 ...

  5. python装饰器详解-Python装饰器基础概念与用法详解

    本文实例讲述了Python装饰器基础概念与用法.分享给大家供大家参考,具体如下: 装饰器基础 前面快速介绍了装饰器的语法,在这里,我们将深入装饰器内部工作机制,更详细更系统地介绍装饰器的内容,并学习自 ...

  6. 【python】set集合基础与使用

    set 是python中一种不常用,但某些场景下很有用的数据类型 1.set的创建 python中集合有两种方式创建,一种是利用大括号{set...}的形式,另一种是利用set()函数形式. set1 ...

  7. python从零基础到项目实战怎么样-2018完整Python零基础到项目精通的学习书籍

    Python 是初学者的语言:Python 对初级程序员而言,是一种伟大的语言,它支持广泛的应用程序开发,从简单的文字处理到 WWW 浏览器再到游戏.Python编程语言的流行直线上升,如何学习好Py ...

  8. python编程语法大全-Python编程入门——基础语法详解

    今天小编给大家带来Python编程入门--基础语法详解. 关于怎么快速学python,可以加下小编的python学习群:611+530+101,不管你是小白还是大牛,小编我都欢迎,不定期分享干货 每天 ...

  9. python编程语法-Python编程入门——基础语法详解

    今天小编给大家带来Python编程入门--基础语法详解. 一.基本概念 1.内置的变量类型: Python是有变量类型的,而且会强制检查变量类型.内置的变量类型有如下几种: #浮点 float_num ...

最新文章

  1. 为你痴,为你狂,小车载我梦飞翔
  2. JS写的排序算法演示
  3. Docker镜像加速器配置
  4. Ubantu使用笔记
  5. 设计模式------中介者模式
  6. 建筑与计算机技术,建筑设计中常用的计算机技术与注意点
  7. 解决 阶段02 商品类与初始商品
  8. [FFmpeg] nvidia 加速 ffmpeg
  9. 大型网站架构之系列(4)——分布式中的异步通信
  10. 【[SDOi2012]Longge的问题】
  11. 快速开发jQuery插件的10大技巧(转)
  12. SpringBoot整合RabbitMQ之Topic Exchange通配符交换机(学习总结)
  13. 【Matlab】建立最优控制LQR控制器模型
  14. DSkinControl( For MFC) 控件- dsCtrlComboBox
  15. PMP强化三错题记录
  16. 银联携手酷客多协助百万商家上线小程序
  17. [C语言]二维数组传参的格式(详细+总结)
  18. 解决:打开阿里云图片显示下载,而不是直接预览的问题
  19. RNA m6A修饰问题汇总
  20. c语言开发exporter,cadvisor node-exporter引发的容器文件系统泄漏

热门文章

  1. C# mvc 500 内部服务器访问异常
  2. POJ 3265 DP
  3. 第二阶段—个人工作总结03
  4. 第十五周项目1-打入“内部”寻“内幕”
  5. Extjs4.1 vtype验证
  6. [翻译]RobotTurK: 灾难情况紧急视频系统
  7. 关于armv7指令集的一个直观数据
  8. UNITY编辑器模式下static变量的坑
  9. 1970.1.1这个特殊时间
  10. UNITY 内存问题资料收集