• 玩转 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'])

     

  • 相关阅读:
    Java设计模式之解释器模式
    软件外包开发原型图工具
    内存取证系列2
    TI mmWave radar sensors Tutorial 笔记 | Module 4 : Some System Design Topics
    《高考择校择专业:权衡与抉择的智慧》
    通信原理板块——信源信宿信息熵、离散信道信息传输速率和信道容量计算
    Redis 各种用法总结,你知道几种?
    模拟计算器编程教程,中文编程开发语言工具编程实例
    Linux操作系统——Linux 内核源码介绍&内核升级
    手感顺滑的平板键盘,更好用的Surface Pro伴侣,雷柏XK200S上手
  • 原文地址:https://blog.csdn.net/AudiA6LV6/article/details/126872418