• 5. 基本数据结构-集合


    一、集合定义

    ​ 集合(set)是一个无序的不重复元素序列。可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。

    二、集合操作

    1. 创建空集合

    1. set_test = {1,2,3,4,5}
    2. set()
    

    2. 集合操作

    basket = {'apple', 'orange', 'apple', 'pear', 'orange', 'banana'}
    print(basket)
    >>>{'orange', 'banana', 'pear', 'apple'}
    
    a = set('abracadabra')
    print(a)
    >>>{'b', 'a', 'd', 'r', 'c'}
    b = set('alacazam')
    >>>{'m', 'z', 'a', 'l', 'c'}
    
    1. 集合a中包含而集合b中不包含的元素
    	a-b
    	>>>{'r', 'd', 'b'}
        
    2. 集合a或b中包含的所有元素
    	a | b
        >>>{'a', 'c', 'r', 'd', 'b', 'm', 'z', 'l'}
        
    3. 集合a和b中都包含了的元素
    	a & b
        >>>{'a', 'c'}
     
    4. 不同时包含于a和b的元素
    	a ^ b
        >>>{'r', 'd', 'b', 'm', 'z', 'l'}
    
    1. difference() - 差集
        x = {"apple", "banana", "cherry"}
        y = {"google", "microsoft", "apple"}
        z = x.difference(y) 
        >>>{'cherry', 'banana'}
       
    2. intersection() - 交集
        x = {"apple", "banana", "cherry"}
        y = {"google", "runoob", "apple"} 
        z = x.intersection(y) 
        >>>{'apple'}
        
        x = {"a", "b", "c"}
    	y = {"c", "d", "e"}
    	z = {"f", "g", "c"}
     	result = x.intersection(y, z)
        >>>{"c"}
        
    3. union() - 并集
        x = {"apple", "banana", "cherry"}
        y = {"google", "runoob", "apple"}
        z = x.union(y) 
        >>>{'cherry', 'runoob', 'google', 'banana', 'apple'}
    
    1. 添加元素 add/update
    	>>>thisset = set(("Google", "Runoob", "Taobao"))
        >>> thisset.add("Facebook")
        >>> print(thisset)
        {'Taobao', 'Facebook', 'Google', 'Runoob'}
        
        >>>thisset = set(("Google", "Runoob", "Taobao"))
        >>> thisset.update({1,3})
        >>> print(thisset)
        {1, 3, 'Google', 'Taobao', 'Runoob'}
        >>> thisset.update([1,4],[5,6])  
        >>> print(thisset)
        {1, 3, 4, 5, 6, 'Google', 'Taobao', 'Runoob'}
        
    2. 移除元素
    	>>>thisset = set(("Google", "Runoob", "Taobao"))
        >>> thisset.remove("Taobao")
        >>> print(thisset)
        {'Google', 'Runoob'}
        >>> thisset.remove("Facebook")   # 不存在会发生错误
        Traceback (most recent call last):
          File "<stdin>", line 1, in <module>
        KeyError: 'Facebook'
            
        >>>thisset = set(("Google", "Runoob", "Taobao", "Facebook"))
        >>> thisset.pop()
        'Facebook'
    
  • 相关阅读:
    迁移学习
    GAN
    PCA
    LSTM
    hdu 1754 I Hate It 线段树
    hdu 4292 Food 最大流
    hdu 2222 Keywords Search AC自动机
    hdu 3572 Task Schedule hdu 2883 kebab 最大流
    poj 1966 Cable TV Network 点连通度
    hdu 2236 匹配
  • 原文地址:https://www.cnblogs.com/hq82/p/11332321.html
Copyright © 2020-2023  润新知