• 玩转 Python 集合,这一篇就够了


    本文带领大家了解 Python 集合: 它们是什么,如何创建它们,何时使用它们,什么是内置函数,以及它们与集合论操作的关系。

    集合、 列表与元组

    列表(list)和元组(tuple)是标准的 Python 数据类型,它们将值存储在一个序列中。集合(set)是另一种标准的 Python 数据类型,它也可用于存储值。它们之间主要的区别在于,集合不同于列表或元组,集合中的每一个元素不能出现多次,并且是无序存储的。

    Python 集合的优势

    由于集合中的元素不能出现多次,这使得集合在很大程度上能够高效地从列表或元组中删除重复值,并执行取并集、交集等常见的的数学操作。

    本教程将向你介绍一些关于 Python 集合和集合论的话题:

    • 如何初始化空集和带有数值的集合。

    • 如何向集合中添加值或者从集合中删除值。

    • 如何高效地使用集合,用于成员检测、从列表中删除重复值等任务。

    • 如何执行常见的集合操作,例如求并集、交集、差集以及对称差。

    • 可变集合和不可变集之间的区别。

    有了这个提纲,让我们开始吧。

    集合初始化

    集合是一个拥有确定(唯一)的、不变的的元素,且元素无序的可变的数据组织形式。

    你可以使用「set()」操作初始化一个空集。

    emptySet = set()

    如果要初始化一个带有值的集合,你可以向「set()」传入一个列表。

    1. dataScientist = set(['Python', 'R', 'SQL', 'Git', 'Tableau', 'SAS'])
    2. dataEngineer = set(['Python', 'Java', 'Scala', 'Git', 'SQL', 'Hadoop'])

    如果你观察一下上面的「dataScientist」和「dataEngineer」集合中的变量,就会发现集合中元素值的顺序与添加时的顺序是不同的,这是因为集合是无序的。

    集合包含的值也可以通过花括号来初始化。

    1. dataScientist = {'Python', 'R', 'SQL', 'Git', 'Tableau', 'SAS'}
    2. dataEngineer = {'Python', 'Java', 'Scala', 'Git', 'SQL', 'Hadoop'}

     

    请牢记,花括号只能用于初始化包含值的集合。如下图所示,使用不包含值的花括号是初始化字典(dict)的方法之一,而不是初始化集合的方法。

     

    要想向集合中添加值或从中删除值,你首先必须初始化一个集合。

    1. # Initialize set with values
    2. graphicDesigner = {'InDesign', 'Photoshop', 'Acrobat', 'Premiere', 'Bridge'}

     向集合中添加值

    你可以使用「add」方法向集合中添加一个值

    graphicDesigner.add('Illustrator')

    需要注意的一点是,你只能将不可变的值(例如一个字符串或一个元组)加入到集合中。举例而言,如果你试图将一个列表(list)添加到集合中,系统会返回类型错误「TyprError」。

    graphicDesigner.add(['Powerpoint', 'Blender'])

     

  • 相关阅读:
    SpringCloud Alibaba系列以及要点
    软考 系统架构设计师之回归及知识点回顾(3)
    微信小程序之点击事件
    工作小计 zookpeer3.8 C api环境搭建
    C++智能指针
    nikto工具的用法描述(漏洞分析)
    【pyqt5界面化工具开发-14】初始牛刀-登录工具
    Python3中用户注册小案例 - 解决中文字符问题 (代码)
    发现广告的是什么?
    linux查看进程号、端口号
  • 原文地址:https://blog.csdn.net/AudiA6LV6/article/details/126872418