zoukankan      html  css  js  c++  java
  • python学习笔记day07 集合

    集合

    集合本身是可变数据类型,可以进行增删操作;

    但是集合中的元素必须是不可变数据类型,所以集合不可以进行改操作;

    集合本身是无序的,不重复;

     

    集合的产生

    set1=set('我是一个小可爱')
    print(set1,type(set1))

    运行结果:

    {'', '', '', '', '', '', ''} <class 'set'>
    set2={True,2,3,'xixi'}
    print(set2,type(set2))

    运行结果:

    {True, 2, 3, 'xixi'} <class 'set'>

    注意:集合本身虽然是可变数据类型,但是集合中的元素必须是不可变数据类型!

    set3={'xk','skdj',12,4,[1,2,3]}  #集合中的元素必须是不可变数据类型,而列表是可变数据类型;
    print(set3,type(set3))  #会报错

    增:

    set.add(element)

    set4={1,2,3,'xuanxuan'}
    set4.add('wow')
    print(set4)

    运行结果:

    F:workspace_pythonpycharm_projectsvenvScriptspython.exe F:/workspace_python/pycharm_projects/fullstack2018-08-17/week2/day04/01.py
    {1, 2, 3, 'xuanxuan', 'wow'}

    set.update(iterable) 

    set4={1,2,3,'xuanxuan'}
    set4.update('love')  #update()方法相当于list的extend() 循环迭代添加;
    print(set4)

    运行结果:

    F:workspace_pythonpycharm_projectsvenvScriptspython.exe F:/workspace_python/pycharm_projects/fullstack2018-08-17/week2/day04/01.py
    {'v', 1, 2, 3, 'e', 'l', 'xuanxuan', 'o'}

    删:

    set.pop() ,随机删除(因为集合无序),有返回值,返回的是被删除的元素:

    set5={1,2,3,'xuanxuan','keke','fangfang'}
    print(set5.pop())  #随机删除
    print(set5)

    运行结果:

    F:workspace_pythonpycharm_projectsvenvScriptspython.exe F:/workspace_python/pycharm_projects/fullstack2018-08-17/week2/day04/01.py
    1
    {2, 3, 'xuanxuan', 'fangfang', 'keke'}

    set.remove(element):删除集合中指定的元素;无返回值

    set5={1,2,3,'xuanxuan','keke','fangfang'}
    set5.remove('xuanxuan')  #删除集合中指定的元素
    print(set5)

    运行结果:

    F:workspace_pythonpycharm_projectsvenvScriptspython.exe F:/workspace_python/pycharm_projects/fullstack2018-08-17/week2/day04/01.py
    {1, 2, 3, 'keke', 'fangfang'}

    set.clear() :删除集合,set(),不是从内存中删除

    set5={1,2,3,'xuanxuan','keke','fangfang'}
    set5.clear()  #删除集合,不是从内存中删除 set();
    print(set5)

    运行结果:

    F:workspace_pythonpycharm_projectsvenvScriptspython.exe F:/workspace_python/pycharm_projects/fullstack2018-08-17/week2/day04/01.py
    set()

    del set :从内存中删除该集合:

    set5={1,2,3,'xuanxuan','keke','fangfang'}
    del set5   #从内存中删除该集合
    print(set5)  #会报错

    运行结果:

    F:workspace_pythonpycharm_projectsvenvScriptspython.exe F:/workspace_python/pycharm_projects/fullstack2018-08-17/week2/day04/01.py
    Traceback (most recent call last):
      File "F:/workspace_python/pycharm_projects/fullstack2018-08-17/week2/day04/01.py", line 16, in <module>
        print(set5)  #会报错
    NameError: name 'set5' is not defined

    改:无 因为集合中的元素是不可变数据类型,无法进行修改!

    查:

    使用 for 循环遍历

    set5={1,2,3,'xuanxuan','keke','fangfang'}
    for i in set5:
        print(i)

    运行结果:

    F:workspace_pythonpycharm_projectsvenvScriptspython.exe F:/workspace_python/pycharm_projects/fullstack2018-08-17/week2/day04/01.py
    1
    2
    3
    keke
    fangfang
    xuanxuan

    frozenset() :集合变为不可变数据类型

    set5={1,2,3,'xuanxuan','keke','fangfang'}
    set6=frozenset(set5)  #frozenset对象是不可变的,无集合的add等方法~
    print(set6)
    for i in set6:
        print(i)

    运行结果:

    F:workspace_pythonpycharm_projectsvenvScriptspython.exe F:/workspace_python/pycharm_projects/fullstack2018-08-17/week2/day04/01.py
    frozenset({1, 2, 3, 'keke', 'fangfang', 'xuanxuan'})
    1
    2
    3
    keke
    fangfang
    xuanxuan

    集合的交并差集:

    set1={1,2,3,6,7}
    set2={2,3,8,9,0,4}
    print(set1 & set2)  #求交集;
    print(set1 | set2)  #求并集;
    print(set1-set2)    #求差集;
    print(set2-set1)    #求差集

    运行结果:

    F:workspace_pythonpycharm_projectsvenvScriptspython.exe F:/workspace_python/pycharm_projects/fullstack2018-08-17/week2/day04/01.py
    {2, 3}
    {0, 1, 2, 3, 4, 6, 7, 8, 9}
    {1, 6, 7}
    {0, 8, 4, 9}
    talk is cheap,show me the code
  • 相关阅读:
    POJ 2486 Apple Tree(树形DP)
    HDOJ 4276 鬼吹灯 (树形DP)
    POJ 2923 Relocation(状态压缩DP)
    Vue,事件的修饰符
    Vye,v-if 和 v-show 显示隐藏的使用
    Vue,for循环的key值绑定
    Vue,v-for循环遍历方式
    Vue-class样式,style样式
    Vue,v-model双向事件绑定 及简易计算器练习
    uni-app 生命周期(下拉已解决)
  • 原文地址:https://www.cnblogs.com/xuanxuanlove/p/9522169.html
Copyright © 2011-2022 走看看