• Python-集合-17


    '''
    集合:可变的数据类型,他里面的元素必须是不可变的数据类型,无序,不重复。
         {}
    '''
    set1 = set({1,2,3})
    # set2 = {1,2,3,[2,3],{'name':'alex'}}  # 错的
    print(set1)  # {1, 2, 3}
    # print(set2)
    set1 = {'alex','wusir','ritian','egon','barry',}
    
    
    #
    # add
    set1.add('女神')
    print(set1) # {'alex', 'wusir', 'egon', '女神', 'ritian', 'barry'}
    
    
    #update
    set1.update('abc')
    print(set1) # {'alex', 'wusir', 'b', 'egon', 'c', '女神', 'ritian', 'a', 'barry'}
    
    
    #删除
    
    set1.pop()  # 随机删除
    print(set1.pop())  # 有返回值 wusir
    print(set1)  # {'b', 'egon', 'c', '女神', 'ritian', 'a', 'barry'}
    
    # set1.remove('alex')  # 按元素
    # print(set1)
    
    # 空字典 - {}    空集合 - set()
    # set1.clear()
    print(set1)  # set()
    
    #del set1
    # print(set1)
    
    
    #
    for i in set1:
        print(i)
    '''
    alex
    ritian
    barry
    b
    c
    wusir
    女神
    
    '''
    
    set1 = {1,2,3,4,5}
    set2 = {4,5,6,7,8}
    set3 = set1 & set2 # 交集
    print(set3)  # {4, 5}
    print(set1.intersection(set2))  # {4, 5}
    
    '''
    描述
    intersection() 方法用于返回两个或更多集合中都包含的元素,即交集。
    
    语法
    intersection() 方法语法:
    
    set.intersection(set1, set2 ... etc)
    
    参数
    set1 -- 必需,要查找相同元素的集合
    set2 -- 可选,其他要查找相同元素的集合,可以多个,多个使用逗号 , 隔开
    
    返回值
    返回一个新的集合。
    
    '''
    
    set1 = {1,2,3,4,5}
    set2 = {4,5,6,7,8}
    print(set1 | set2)  # {1, 2, 3, 4, 5, 6, 7,8}
    print(set2.union(set1))  # {1, 2, 3, 4, 5, 6, 7}
    
    '''
    描述
    union() 方法返回两个集合的并集,即包含了所有集合的元素,重复的元素只会出现一次。
    
    语法
    union() 方法语法:
    
    set.union(set1, set2...)
    
    参数
    set1 -- 必需,合并的目标集合
    set2 -- 可选,其他要合并的集合,可以多个,多个使用逗号 , 隔开。
    
    返回值
    返回一个新集合。
    
    '''
    
    set1 = {1,2,3,4,5}
    set2 = {4,5,6,7,8}
    print(set1 ^ set2)  # {1, 2, 3, 6, 7, 8}
    print(set1.symmetric_difference(set2))  # {1, 2, 3, 6, 7, 8}
    '''
    描述
    symmetric_difference() 方法返回两个集合中不重复的元素集合,即会移除两个集合中都存在的元素。
    
    语法
    symmetric_difference() 方法语法:
    
    set.symmetric_difference(set)
    
    参数
    set -- 集合
    
    返回值
    返回一个新的集合。
    '''
    
    set1 = {1,2,3,4,5}
    set2 = {4,5,6,7,8}
    print(set1 - set2)  # {1, 2, 3}
    #set1独有的
    print(set1.difference(set2))  # {1, 2, 3}
    
    '''
    描述
    difference() 方法用于返回集合的差集,即返回的集合元素包含在第一个集合中,但不包含在第二个集合(方法的参数)中。
    
    语法
    difference() 方法语法:
    
    set.difference(set)
    
    参数
    set -- 必需,用于计算差集的集合
    
    返回值
    返回一个新的集合。
    
    '''
    
    set1 = {1,2,3,}
    set2 = {1,2,3,4,5,6}
    
    print(set1 < set2) # True
    print(set1.issubset(set2))  # 这两个相同,都是说明set1是set2子集。 # True
    
    print(set2 > set1) # True
    print(set2.issuperset(set1))  # 这两个相同,都是说明set2是set1超集。 # True
    
    
    #去重
    li = [1,2,33,33,2,1,4,5,6,6]
    set1 = set(li)
    print(set1) # {1, 2, 33, 4, 5, 6}
    
    li = list(set1)
    print(li)  #  [1, 2, 33, 4, 5, 6]
    
    s1 = {1,2,3}
    print(s1,type(s1)) # {1, 2, 3} <class 'set'>
    
    s = frozenset('barry')
    print(s,type(s))
    for i in s:
        print(i)
    
    '''
    描述
    frozenset() 返回一个冻结的集合,冻结后集合不能再添加或删除任何元素。
    
    语法
    frozenset() 函数语法:
    
    class frozenset([iterable])
    
    参数
    iterable -- 可迭代的对象,比如列表、字典、元组等等。
    
    返回值
    返回新的 frozenset 对象,如果不提供任何参数,默认会生成空集合。
    
    '''
  • 相关阅读:
    缓存概述
    进程Process
    MVC系统过滤器、自定义过滤器
    暂无,进程那篇深度不够
    SeasLog 与 monolog 日志系统的区别,SeasLog安装步骤
    阿里面试官:说一下从url输入到返回请求的过程,问的难度就是不一样!
    [技术分享]OSI七层模型详解
    Mysql引擎介绍及InnoDB逻辑存储结构
    Paypal 实现自动订阅
    PayPal 支付Checkout 收银台和 Subscription 订阅计划全过程分享
  • 原文地址:https://www.cnblogs.com/LXL616/p/10642985.html
Copyright © 2020-2023  润新知