zoukankan      html  css  js  c++  java
  • Python学习 :集合

    集合 Set

    集合的创建

    集合的创建只有一种方式

    集合中的元素必须是不可变的数据类型

    集合是无序的,可以通过 for 循环来遍历或者迭代器进行筛选

    s=set('xiaoming')
    s1=['alex','mike','alex','mary']
    s2=set(s1)
    print(s)
    print(s2)
    >>>{'a','g','m','x','o','n','i'}
    >>>{'mike','alex'}
    # 集合的重要特点:去重,重复元素只会显示一次
    s3=list(s)
    # 重新把集合转变为列表
    print(s3)
    >>>['mike','alex']
    

     

    集合的分类:可变集合、不可变集合

    可变集合(set):可添加和删除元素,不能作为字典的键

    不可变集合(frozenset):与可变集合相反

    集合的相关操作

    s = set('xiaoming')
    s1 = ['alex','mike','alex','mary']
    s = set(s1)
    
    1)add
    s.add('john')
    print(s)
    >>>{'alex', 'mary', 'mike', 'john'}
    
    2)update
    s.update('john')
    print(s)
    >>>{'alex','n','h','mike','o','j'}
    s.update(['john','damon'])#使用一个课迭代的容器list来把元素加入集合中
    print(s)
    >>>{'alex','mike','john'}
    
    3)pop
    s.pop()#pop不能指定删除某个特定的元素,每次只会删除一个参数
    print(s)
    >>>{'mike','alex'}
    
    4)remove
    s.remove('mike')#remove可以删除指定元素
    print(s)
    >>>{'mary', 'alex'}
    
    5)clear
    s.clear()#清空集合
    print(s)
    >>>set()
    
    6)del#删除集合
    

    集合类型操作符

    1)in,not in
    
    2)集合等价(==)与不等价(!=)
    
    3)子集、超集
    父集、超集(>)
    a=set([1,2,3,4])
    b=set([4,5,6,7])
    print(a.issuperset(b)) # a 是否完全包含 b
    >>> False
    子集(<) # a 是否属于 b
    print(a.issubset(b))
    >>> False
    
    4)联合即并集符号(|)
    联合(union)操作与集合的or操作是等价的,取两个集合中所有的元素print(a.union(b))
    # print(a|b)
    >>>{1,2,3,4,5,6,7}
    
    5)交集(&)
    print(a.intersection(b))
    # print(a&b)
    >>>{4}
    
    6)差集(-)
    print(a.difference(b))#inabutnotinb
    # print(a-b)
    >>>{1,2,3} 7)对称差集(^) print(a.symmetric_difference(b)) # print(a^b) >>>{1,2,3,5,6,7}
     
  • 相关阅读:
    PLSQL Developer新建表空间
    oracle中where子句和having子句中的区别
    ORACLE基本数据类型
    Oracle数据库字符集问题
    问题及解决方法
    Show Profile
    批量数据脚本
    慢查询日志
    GROUP BY关键字优化
    order by关键字优化
  • 原文地址:https://www.cnblogs.com/ArticleYeung/p/9762790.html
Copyright © 2011-2022 走看看