No.8 Python集合类型

集合(set)是一个无序的不重复元素序列。集合中的所有元素必须是可哈希的值,即不可变类型,而且元素在集合中是无序的。

与其他序列类型最大的区别,集合中的元素是不重复的,每个元素只能在同一个集合中出现一次,这一特性,在某些去重场景中将变得非常适用。

1、创建集合

同其他数据类型相似,我们可以直接将一个集合赋值给变量,也可以使用工厂函数set()进行创建。

# 创建集合
set1 = {"Hello", "Python"}
set2 = set(["Happy", "New", "Year"])
print(set1, set2)
# {'Python', 'Hello'} {'Year', 'Happy', 'New'}

2、访问集合

由于集合中的元素是无序的,自然也无法通过索引的方式进行访问。想要访问集合中的元素,我们只能通过遍历或者判断集合是否包含某个元素的方式进行访问集合元素。

# 遍历集合
set1 = set(["Happy", "New", "Year"])
for ch in set1:
    print(ch)
# Happy
# Year
# New
# 判断集合是否包含
if "Happy" in set1:
    print("Happy")
# Happy

3、修改集合

集合是可变类型,我们可以通过添加或删除元素的方式,对集合中元素进行修改。

# 添加单个元素
set1 = {"Hello", "Python"}
set1.add("Hi")
print(set1)
# {'Python', 'Hi', 'Hello'}

# 添加多个元素
set1.update(["Happy", "New", "Year"])
print(set1)
# {'Hi', 'New', 'Python', 'Happy', 'Year', 'Hello'}

# 移除元素
set1.remove("Hello")
print(set1)
# {'Hi', 'Year', 'Happy', 'New', 'Python'}

4、清空集合

通过clear()方法即可将集合清空
# 清空集合
set1 = {"Hello", "Python"}
set1.clear()
print(set1)
# set()

5、其他操作

# 集合去重
lst1 = ["abc", "book", "apple", "car", "earth", "banana", "book"]
set1 = set(lst1)
print(set1)
# {'book', 'abc', 'earth', 'car', 'apple', 'banana'}

# 集合运算
a = {1, 2, 3, 4, 5, 6}
b = {2, 4, 6, 8}
# 集合a包含而集合b不包含的元素
print(a - b)
# {1, 3, 5}
# 集合a或b中包含的元素
print(a | b)
# {1, 2, 3, 4, 5, 6, 8}
# 集合a和b中都包含的元素
print(a & b)
# {2, 4, 6}
# 不同时包含于集合a和b的元素
print(a ^ b)
# {1, 3, 5, 8}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值