Python入门之集合的使用教程

 更新时间:2022年09月06日 09:25:50   作者:胡安民-独行者  
在Python中,集合(Set) 是一个无序、不重复的序列,它不支持索引。本文将通过示例为大家详细讲讲Python中集合是使用,需要的可以参考一下

前序

在Python中,集合(Set) 是一个无序、不重复的序列,它不支持索引。集合一般用于元素去重或者一些数学中的操作像union,intersection,difference和complement等数学运算。

集合操作

创建集合

通过使用set()函数或将所有元素放置在一对大括号内创建一个集合。

Days=set(["Mon","Tue","Wed","Thu","Fri","Sat","Sun"])
Months={"Jan","Feb","Mar"}
Dates={21,22,17}

访问集合

我们无法访问集合中的单个值。我们只能如上所示访问所有元素。但是我们也可以通过遍历该集合来获取单个元素的列表。

Days=set(["Mon","Tue","Wed","Thu","Fri","Sat","Sun"])
for d in Days:
    print(d)

判断集合是存在指定值

    x = {"a","b","c"}
    print("a" in x)

集合添加

我们可以使用add()方法将元素添加到集合中。

Days=set(["Mon","Tue","Wed","Thu","Fri","Sat"])
Days.add("Sun")
print(Days)

使用 update() 方法将多个项添加到集合中:

thisset = {"apple", "banana", "cherry"}
thisset.update(["orange", "mango", "grapes"])
print(thisset)

集合删除

要删除集合中的项目,请使用 remove() 或 discard() 方法。。

Days=set(["Mon","Tue","Wed","Thu","Fri","Sat"])
Days.discard("Sun")
print(Days)
thisset = {"apple", "banana", "cherry"}
thisset.remove("banana")
print(thisset)

注释:如果要删除的项目不存在,则 remove() 将引发错误。 如果要删除的项目不存在,则 discard() 不会引发错误。

您还可以使用 pop() 方法删除项目,但此方法将删除最后一项。请记住,set 是无序的,因此您不会知道被删除的是什么项目。 pop() 方法的返回值是被删除的项目。

thisset = {"apple", "banana", "cherry"}
x = thisset.pop()
print(x)

clear() 方法清空集合:

thisset = {"apple", "banana", "cherry"}
thisset.clear()
print(thisset)

del 彻底删除集合:

thisset = {"apple", "banana", "cherry"}
del thisset
print(thisset)

集合函数

返回集合的副本

如果不使用这种方式的话,那么直接用=号复制的是地址,这样就导致了修改了值而原集合也会发生变化

fruits = {"apple", "banana", "cherry"}
x = fruits.copy()
print(x)

判断集合内是否包含另一个集合

如果指定集中的所有项目都存在于原始集中,则 issuperset() 方法将返回 True,否则返回 False。

x = {"f", "e", "d", "c", "b", "a"}
y = {"a", "b", "c"}
z = x.issuperset(y) 
print(z)

并集

您可以使用 union() 方法返回包含两个集合中所有项目的新集合,也可以使用 update() 方法将一个集合中的所有项目插入另一个集合中:

set1 = {"a", "b" , "c"}
set2 = {1, 2, 3}

set3 = set1.union(set2)
print(set3)
set1 = {"a", "b" , "c"}
set2 = {1, 2, 3}

set1.update(set2)
print(set1)

注释:union() 和 update() 都将排除任何重复项。

差集

返回x集合有的y集合没有的

x = {"apple", "banana", "cherry"}
y = {"google", "microsoft", "apple"}

z = x.difference(y) 

print(z)

交集

intersection() 方法返回包含两个或更多集合之间都存在的项目

x = {"apple", "banana", "cherry"}
y = {"google", "microsoft", "apple"}

z = x.intersection(y) 

print(z)

补集

返回的集合包含两个集合中都不存在的项的混合体 ,也就是a和b集合都有的不输出

x = {"apple", "banana", "cherry"}
y = {"google", "microsoft", "apple"}

z = x.symmetric_difference(y) 

print(z)

交集判断

集合 x 中没有项目存在于集合 y 中,则返回 True 否则返回False

x = {"apple", "banana", "cherry"}
y = {"google", "microsoft", "facebook"}
z = x.isdisjoint(y) 
print(z)

到此这篇关于Python入门之集合的使用教程的文章就介绍到这了,更多相关Python集合内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • python 拷贝特定后缀名文件,并保留原始目录结构的实例

    python 拷贝特定后缀名文件,并保留原始目录结构的实例

    下面小编就为大家分享一篇python 拷贝特定后缀名文件,并保留原始目录结构的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-04-04
  • 20行Python代码实现一款永久免费PDF编辑工具的实现

    20行Python代码实现一款永久免费PDF编辑工具的实现

    这篇文章主要介绍了20行Python代码实现一款永久免费PDF编辑工具的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-08-08
  • Python如何使用ElementTree解析xml

    Python如何使用ElementTree解析xml

    这篇文章主要介绍了Python如何使用ElementTree解析xml,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-10-10
  • Python使用Pillow添加水印

    Python使用Pillow添加水印

    这篇文章主要为大家详细介绍了Python使用Pillow添加水印,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-05-05
  • 基础的十进制按位运算总结与在Python中的计算示例

    基础的十进制按位运算总结与在Python中的计算示例

    按位运算是计算机学习中的基础,Python完全支持位运算符从而几乎可以直接显示出位运算的结果,这里我们稍微总结一下基础的十进制按位运算总结与在Python中的计算示例
    2016-06-06
  • Python实例方法、类方法、静态方法区别详解

    Python实例方法、类方法、静态方法区别详解

    这篇文章主要介绍了Python实例方法、类方法、静态方法区别详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-09-09
  • python request不走代理proxy方式

    python request不走代理proxy方式

    文章主要介绍了在Linux系统中配置代理后,使用Python的request包请求URL时会通过代理访问的情况,并提供了如何在代码中设置以避免通过代理访问的方法
    2024-11-11
  • python结合shell查询google关键词排名的实现代码

    python结合shell查询google关键词排名的实现代码

    这篇文章主要介绍了python结合shell查询google关键词排名的实现代码,需要的朋友可以参考下
    2016-02-02
  • python操作excel文件并输出txt文件的实例

    python操作excel文件并输出txt文件的实例

    今天小编就为大家分享一篇python操作excel文件并输出txt文件的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-07-07
  • python中的关键字(pass)使用

    python中的关键字(pass)使用

    这篇文章主要介绍了python中的关键字(pass)使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2025-04-04

最新评论