Python学习笔记(9)-Set集合

1、Set集合的定义

Set集合是一个无序的不重复元素序列。

2、 set集合的创建

  1. 方式1 通过 {value1,value2,…}创建
    set1 = {1, 2, 3, 1, 2}
    print(set1) # {1, 2, 3}
    print(type(set1)) # <class ‘set’>

结论1 set集合是不存在重复元素的

  1. 方式2 通过set()函数创建
    set2 = set(‘123456’)
    print(type(set2)) # <class ‘set’>
    print(set2)

    第1次运行输出结果: {‘4’, ‘6’, ‘3’, ‘5’, ‘1’, ‘2’}
    第2次运行输出结果: {‘6’, ‘4’, ‘2’, ‘1’, ‘5’, ‘3’}

结论2 set集合是无序的,每次输出的结果顺序都可能不同

从结论1和2可以知道Set集合是一个无序的不重复元素序列。

3、如何创建一个空的set集合

  1. 使用方式1 {} 创建的是一个空字典 不是一个空集合
    print(type({})) # <class ‘dict’>

  2. 使用方式2 set()函数创建 可以创建一个空集合
    print(type(set())) # <class ‘set’>

4、set集合添加元素

  1. 通过add()方法
    set3 = {1, 2, 3}
    print(set3) # {1, 2, 3}
    set3.add(4) # set3添加一个值为4的元素
    print(set3) # {1, 2, 3, 4}

  2. 通过update()方法 且参数可以是列表,元组,字典等
    set4 = {1, 2, 3}
    print(set3)

    # 添加不可迭代的数据类型
    # set4.update(6) # TypeError: ‘int’ object is not iterable
    # 添加可迭代的数据类型

    添加列表
    set4.update([1, 4, 5])
    print(set4) # {1, 2, 3, 4, 5}

    添加元组
    set4.update((1, 6, 7))
    print(set4) # {1, 2, 3, 4, 5, 6, 7}

    添加字典 只添加字典的键名 键值不添加进集合中
    set4.update({“a”: 8, “c”: 9})
    print(set4) # {1, 2, 3, 4, 5, 6, 7, ‘c’, ‘a’}

4、set集合元素的移除

  1. 通过remove()方法 移除不存在的元素 程序会报错
    set5 = {1, 2, 3}
    print(set5) # {1, 2, 3}
    set5.remove(1)
    print(set5) # {2, 3}

    # set5.remove(“a”) # TypeError: descriptor ‘remove’ requires a ‘set’ object but received a ‘str’

  2. 通过discard()方法 移除不存在的元素 程序不会报错
    set6 = {1, 2, 3}
    set6.discard(‘a’)

  3. 通过pop()方法 随机删除一个set集合中的元素
    set7 = {1, 2, 3}
    val = set7.pop()
    print(val) # 1
    print(set7) # {2, 3}

5、获取set集合元素个数

set8 = {1, 2, 3, 4, 5, 6, 7, 8, 9}
print(len(set8)) # 9

6、清空集合 通过clear()方法

set9 = {1, 2, 3, 4, 5, 6, 7, 8, 9}
print(set9) # {1, 2, 3, 4, 5, 6, 7, 8, 9}
set9.clear()
print(set9) # set()

7、判断元素是否在set集合中

set10 = {1, 2, 3}
print(set10)
print(1 in set10) # True
print(10 in set10) # False

8、计算两个集合的差集 可以通过"-"运算符

set10 = {1, 2, 3, 4}
set11 = {3, 4}
cha_set1 = set10 - set11
print(cha_set1) # {1, 2}

cha_set2 = set11 - set10
print(cha_set2) # set()

9、 计算两个集合的交集 可以通过"&"运算符

set12 = {1, 2, 3}
set13 = {3, 4}
jia_set = set12 & set13
print(jia_set) # {3}

10、计算两个集合的并集 元素不重复 可以通过"|"运算符

set14 = {1, 2, 3, 4, 5}
set15 = {3, 4, 6, 7}
bing_set = set14 | set15
print(bing_set) # 1, 2, 3, 4, 5, 6, 7}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值