python-集合

1. 集合

  • 集合(Set):是一个无序、不重复元素的序列,主要用于元素去重和关系测试。

  • 关系测试支持:

    • 联合

    • 交集

    • 差集

    • 对称差集

  • 定义方法:set()函数或者大括号来创建集合。

  • 注意:想要创建空集合,必须使用set()而不是{}。后者用于创建空字典。

2. 基本操作

  • 定义空集合

    computer = set()
    
  • 定义集合:

    computer = {"主机","显示器","鼠标","键盘"}
    或者
    computer = set(["主机","显示器","鼠标","键盘","主机"])
    
  • 常用命令
    image

  • 列表去重

    computer = ["主机","显示器","鼠标","键盘","显示器","鼠标"]
    s = set(computer)
    print(s)
    

3.关系测试

关系符号 描述
- 差集
& 交集
| 合并、并集
!= 不等于
== 等于
  • 对两个列表进行关系测试:

    a = set([1, 2, 3, 4, 5, 6])
    b = set([4, 5, 6, 7, 8, 9])
    
  • 返回a集合中元素在b集合没有的

    print(a -b)
    
  • 返回b集合中元素在a集合中没有的

    print(b -a)
    
  • 返回交集,即两个集合中一样的元素

    print(a & b)
    
  • 返回合集,即合并去重

    print(a | b)
    
  • 判断是否不相等

    print(a != b)
    
  • 判断是否相等

    print(a == b)
    

4. 案例

4.1 集合基本操作

#!/usr/bin/env python3
# _*_ coding: utf-8 _*_
# Author:shichao
# File: .py

computer = {"主机","显示器","鼠标","键盘","音响","内存","cpu","主机"}
lst = set(computer)
print(lst)

# 添加
computer.add("耳机")
print(computer)


# 删除
computer.remove("键盘")
print(computer)

computer.pop()
print(computer)

4.2 集合关系测试

#!/usr/bin/env python3
# _*_ coding: utf-8 _*_
# Author:shichao
# File: .py

a = set([1, 2, 3, 4, 5, 6])
b = set([4, 5, 6, 7, 8, 9])

# 返回a集合中元素在b集合没有的
print(a - b)

# 返回b集合中元素在a集合中没有的
print(b - a)

# 返回交集,即是两个集合中一样的元素
print(a & b)

# 返回合集,即合并去重
print(a | b)

# 判断是否不相等
print(a != b)

# 判断是否相等
print(a == b)
posted @ 2022-12-26 11:37  七月流星雨  阅读(23)  评论(0编辑  收藏  举报