06-python数据容器-set(集合)入门基础操作

简介: 06-python数据容器-set(集合)入门基础操作

集合的定义

"""
演示数据容器集合的使用
"""
#定义集合
my_set={"计算机","0854","考研上岸","计算机","0854","考研上岸","计算机","0854","考研上岸"}
my_set_empty=set()
print(f"my_set的内容是:{my_set},类型是{type(my_set)}")
print(f"my_set_empty的内容是:{my_set_empty},类型是{type(my_set_empty)}")

可以发现已经将重复的元素进行去掉,且顺序也发生的错乱

集合常用修改操作

添加新元素set.add()

#添加新元素
my_set={"计算机","0854","考研上岸","计算机","0854","考研上岸","计算机","0854","考研上岸"}
my_set.add("Python")
my_set.add("0854")
print(f"my_set添加元素后的结果:{my_set}")

新添加的元素python已经成功添加,但是添加的元素0854在以前的列表中已经包含了,所以结果中不在显示,只显示一个0854

移除元素set.remove()

#移除元素
my_set={"计算机","0854","考研上岸","计算机","0854","考研上岸","计算机","0854","考研上岸"}
my_set.remove("计算机")
print(f"my_set移除计算机后的结果是{my_set}")

随机取出一个元素set.pop()

#随机取出一个元素
my_set={"计算机","0854","考研上岸","计算机","0854","考研上岸","计算机","0854","考研上岸"}
element=my_set.pop()
print(f"集合被取出元素是:{element}")

清空集合set.clear()

#清空集合
my_set={"计算机","0854","考研上岸","计算机","0854","考研上岸","计算机","0854","考研上岸"}
my_set.clear()
print(f"集合被清空啦,结果是:{my_set}")

取出两个集合的差集:集合1.difference(集合2)

#取2个集合的差集
set1={1,2,3}
set2={1,5,6}
set3=set1.difference(set2)
print(f"取出差集后的结果是:{set3}")
print(f"取出差集后set1的结果是:{set1}")
print(f"取出差集后set2的结果是:{set2}")

消除两个集合的差集:集合1.difference_update(集合2)

#消除2个集合的差集
set1={1,2,3}
set2={1,5,6}
set1.difference_update(set2)
print(f"消除差集后,集合1结果:{set1}")
print(f"消除差集后,集合2结果:{set2}")

两个集合的合并:集合1.union(集合2)

#2个集合合并为1个
set1={1,2,3}
set2={1,5,6}
set3=set1.union(set2)
print(f"两个集合合并结果:{set3}")
print(f"合并后集合1:{set1}")
print(f"合并后集合2:{set2}")

统计集合元素的数量len()

#统计集合元素数量len()
set1={1,2,3,4,5}
num=len(set1)
print(f"集合内的元素数量有:{num}")

注意:这里是数字5是说不重复的数字一共有5个,若有重复的数字将不计入在内

集合的for循环遍历,不支持下标索引,故不支持while循环遍历

#集合的遍历,集合不支持下标索引,所以不能使用whlie循环遍历,可以用for循环
set1={1,2,3,4,5}
for element in set1:
    print(f"集合元素有:{element}")

课后练习–信息去重

有如下列表:

my_list=['计算机','程序员','计算机','程序员‘,'jisuanji','chenxuyuan','jisuanji','chenxuyuan']

1.请定义一个空集合

2.通过for循环遍历列表

3.在for循环中将列表的元素添加至集合

4.最终得到元素去重后的集合对象,并打印输出

"""
演示集合的课后练习题
my_list=['计算机','程序员','计算机','程序员‘,
        'jisuanji','chenxuyuan','jisuanji','chenxuyuan']
"""
my_list=['计算机','程序员','计算机','程序员',
        'jisuanji','chenxuyuan','jisuanji','chenxuyuan']
#定义一个空集合
my_set=set()
#通过for循环遍历列表
for element in my_list:
    #在for循环重将列表的元素添加至集合
    my_set.add(element)
#最终得到元素去重后的集合对象,并打印输出
print(f"列表的内容是:{my_list}")
print(f"通过for循环后,得到的集合对象是:{my_set}")


相关文章
|
14天前
|
索引 Python
python 格式化、set类型和class类基础知识练习(上)
python 格式化、set类型和class类基础知识练习
37 0
|
14天前
|
索引 容器
06-数据容器str(字符串)-字符串的下标索引/字符串无法修改/查找字符串下标初始值/字符串的替换/字符串的分割/字符串去除前后空格/统计字符串的数量/字符串的循环遍历/对字符串进行分割
06-数据容器str(字符串)-字符串的下标索引/字符串无法修改/查找字符串下标初始值/字符串的替换/字符串的分割/字符串去除前后空格/统计字符串的数量/字符串的循环遍历/对字符串进行分割
|
14天前
|
索引 容器
06-python数据容器-list列表定义/list的10个常用操作/列表的遍历/使用列表取出偶数
06-python数据容器-list列表定义/list的10个常用操作/列表的遍历/使用列表取出偶数
|
20天前
|
关系型数据库 MySQL Linux
docke数据卷容器
docke数据卷容器
11 0
|
1月前
|
Python
gyp ERR! stack Error: Can‘t find Python executable “python“, you can set the PYTHON env variable.
gyp ERR! stack Error: Can‘t find Python executable “python“, you can set the PYTHON env variable.
28 1
|
1月前
|
存储 JSON C++
【C++】容器篇(五)—— map和set的基本介绍
【C++】容器篇(五)—— map和set的基本介绍
|
6天前
|
存储 JavaScript 索引
js开发:请解释什么是ES6的Map和Set,以及它们与普通对象和数组的区别。
ES6引入了Map和Set数据结构。Map的键可以是任意类型且有序,与对象的字符串或符号键不同;Set存储唯一值,无重复。两者皆可迭代,支持for...of循环。Map有get、set、has、delete等方法,Set有add、delete、has方法。示例展示了Map和Set的基本操作。
17 3
|
1月前
|
存储 自然语言处理 C++
map和set的简单介绍
map和set的简单介绍
20 1
|
1月前
|
存储 安全 Java
java集合框架及其特点(List、Set、Queue、Map)
java集合框架及其特点(List、Set、Queue、Map)
|
3月前
|
JavaScript 前端开发 定位技术
JavaScript 中如何代理 Set(集合) 和 Map(映射)
JavaScript 中如何代理 Set(集合) 和 Map(映射)
50 0