码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 【Python】-- 集合的常用方法


    已经有了列表、元组、字符串三个数据容器,为什么还要集合?

    列表:可修改、支持重复元素且有序。

    元组、字符串:不可修改,支持重复元素且有序。

    它们三个都支持重复元素且有序。

    有些场景需要对内容去重,而集合主要特点是:不支持元素重复,并且内容无序。


    集合

    一、基本语法

    1、定义集合字面量

    {元素,元素,......}

    2、定义集合变量

    变量名称 = {元素,元素,.....}

    3、定义空集合

    变量名称 = set()

    二、常用操作

    1、添加新元素

    语法:集合.add(元素)

    例:

    1. my_set = {"python"}
    2. my_set.add("python")
    3. my_set.add("java")
    4. print(my_set)

    结果:

    {'java', 'python'}

    2、移除元素

    语法:集合.remove(元素)

    例:

    1. my_set = {"python","java"}
    2. my_set.remove("python")
    3. print(my_set)

    3、从集合中随机取出元素

    语法:集合.pop()

    例:

    1. my_set = {"python","java"}
    2. element = my_set.pop()
    3. print(element)

    4、清空集合

    语法:集合.clear()

    例:

    1. my_set = {"python","java"}
    2. my_set.clear()
    3. print(my_set)

    结果:

    set()

    5、取两个集合的差集(集合1有,集合2没有)

    语法:集合1.difference(集合2)

    结果:产生新集合,集合1、集合2不变

    例:

    1. my_set = {1,2,3}
    2. my_set2 = {2,3,4}
    3. print(my_set.difference(my_set2))

    6、消除两个集合的差集

    语法:集合1.difference_update(集合2)

    结果:集合1被修改,集合2不变

    例:

    1. my_set = {1,2,3}
    2. my_set2 = {2,3,4}
    3. my_set.difference_update(my_set2)
    4. print(my_set)
    5. print(my_set2)

    结果:

    {1}
    {2, 3, 4}

    7、两个集合合并

    语法:集合1.union(集合2)

    结果:得到新集合,集合1集合2不变

    例:

    1. my_set = {1,2,3}
    2. my_set2 = {2,3,4}
    3. print(my_set.union(my_set2))

    8、统计集合元素的数量

    语法:len(集合)

    例:

    1. my_set = {1,1,1,2,2,2}
    2. count = len(my_set)
    3. print(count)

    结果:

    2

    9、集合遍历

    集合不支持下标索引,不能用while;

    可以用for

    例:

    1. my_set = {1,1,1,2,2,2}
    2. for element in my_set:
    3. print(element)

  • 相关阅读:
    GitLab数据迁移后出现500错误
    【无标题】
    C#学习相关系列之Linq用法---where和select用法(二)
    ​【原创】基于SSM的酒店预约管理系统(酒店管理系统毕业设计)
    CMake教程-第 5 步:安装和测试
    【LeetCode】3. 无重复字符的最长子串
    Qt实现桌面画线、标记,流畅绘制,支持鼠标和多点触控绘制
    打印nXn方阵的上三角阵
    Java stream流 常用记录
    JSON.toJSONString/JSONObject.toJSONString将实体类对象转换成JSON字符串时,多出了params字符串[记录贴]
  • 原文地址:https://blog.csdn.net/Tir_zhang/article/details/126677648
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号