Python知识分享网 - 专业的Python学习网站 学Python,上Python222
Python 集合set
匿名网友发布于:2023-09-12 10:35:18
(侵权举报)

Python 7天快速入门完整视频教程https://www.bilibili.com/video/BV1o84y1Z7J1

 

Python    集合set

 

 

集合set

 

集合是多个元素的集合,但是不能有重复元素,区别于列表[],元组()和字符串""。

 

集合的定义

 

赋值定义

集合变量名称 ={ 元素1, 元素2, 元素3, 元素4, ... }

空集合定义

集合变量名称 = set()

 

# 定义集合
set1 = {"php", "java", "python"}
print(f"set1={set1},type={type(set1)}")

# 定义空集合
set2 = set()
print(f"set2={set2},type={type(set2)}")

 

输出结果:

 

set1={'java', 'python', 'php'},type=<class 'set'>
set2=set(),type=<class 'set'>

 

 

集合的常用方法

 

因为集合是无序的,所以集合不支持下标索引访问。

集合和列表一样,也是可以修改的。

 

1,add(元素),添加元素到集合,假如元素集合里存在,则忽略

 

set1 = {"php", "java", "python"}
set1.add("c")
set1.add("python")
print(set1)

 

2,pop(),随机从集合中获取一个元素,并且返回。

 

# pop(),随机从集合中获取一个元素,并且返回
set2 = {"php", "java", "python"}
ele = set2.pop()
print(set2, ele)

 

3,clear(),清空集合

 

set3 = {"php", "java", "python"}
set3.clear()
print(set3)

 

4,集合1.difference(集合2) 返回差集 (集合1有但是集合2没有的新集合)

 

set4 = {"a", "b", "c"}
set5 = {"a", "d", "e"}
print(set4.difference(set5))
print(set4)
print(set5)

 

5,集合1.difference_update(集合2) ,删除差集。集合1内,删除和集合2相同的元素

 

set6 = {"a", "b", "c"}
set7 = {"a", "d", "e"}
set6.difference_update(set7)
print(set6)
print(set7)

 

输出结果:

 

{'b', 'c'}
{'a', 'e', 'd'}

 

6,集合1.union(集合2),返回合并集合1,集合2后的新集合

 

set8 = {"a", "b", "c"}
set9 = {"a", "d", "e"}
set10 = set8.union(set9)
print(set10)
print(set8)
print(set9)

 

输入结果:

 

{'b', 'd', 'c', 'a', 'e'}
{'b', 'c', 'a'}
{'d', 'e', 'a'}

 

7,len(集合)统计元素个数

 

set11 = {"a", "b", "c"}
print(len(set11))

 

 

集合的遍历

 

因为集合不支持下标索引,所以不能用while循环

我们用for循环遍历

 

set12 = {"php", "java", "python"}
for ele in set12:
    print(ele)

 

作业:有列表对象 list1 = ['python', 'java', 'php', 'java']

要求,通过定义一个新的集合对象,遍历列表,通过add添加到集合里,实现去重。

 

 

转载自: