[Python3]Sets(集合)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[Python3]Sets(集合)相关的知识,希望对你有一定的参考价值。
概述
set是Python的基本数据类型,它有可变集合(set()) 和不可变集合(frozenset)两种,在本节中,我们主要讲解set的使用方法。set和dict类似,其主要特性是:
-
其存储的元素是无序的
-
其存储的元素是不重复
下面我们看一下如何创建集合:
set1 = set(u"DeepTest DeepTest") print(set1)
上述语句将输出:
{‘t‘, ‘D‘, ‘s‘, ‘T‘, ‘p‘, ‘e‘}
这里体现了set的关键特性:无序、不重复。
set方法
在Python中,通过add方法来给set新增新的元素,如果添加重复元素,会被自动过滤掉,即添加没任何效果。
-
add
新增一个元素到set中 -
remove
从set中删除指定的元素 -
clear
清空set集合 -
update
用于新增多个元素值,参数为list -
issubset 用法 s1.issubset(s2), 判断s1中的每个元素是否都在s2中,即s1<-s2
-
issuperset 用法 s1.issuperset(s2), 判断s2中的每个元素是否都在s1中,即s1>=s2
-
union
并集,返回两个集合的并集 -
intersection
交集,返回两个集合的交集 -
difference 用法 s1.difference(s2), 返回s1中有s2中没的元素
下面看下代码示例:
# -*- coding:utf-8 -*- __author__ = u‘谷白‘ if __name__ == "__main__": print(u"set操作示例") set_source = set([1, 1, 2, 3, 4, 5, 6, 7]) set_demo = set([1, 1, 2, 3, 4, 5, 6, 7]) print(u"原始数据: ", end="") print(set_demo) # add方法,新增元素 print(u"add后: ", end="") set_demo.add(9) set_demo.add(1) print(set_demo) # remove 删除元素 print(u"remove后: ", end="") set_demo.remove(9) print(set_demo) # update 新增多个元素值 list_demo = ["a", "b", "c"] set_demo.update(list_demo) print(u"update后: ", end="") print(set_demo)
运行效果如下:
set操作示例 原始数据: {1, 2, 3, 4, 5, 6, 7} add后: {1, 2, 3, 4, 5, 6, 7, 9} remove后: {1, 2, 3, 4, 5, 6, 7} update后: {1, 2, 3, 4, 5, 6, 7, ‘b‘, ‘a‘, ‘c‘}
对于其他方法的使用,请自行练习掌握。
以上是关于[Python3]Sets(集合)的主要内容,如果未能解决你的问题,请参考以下文章
python基础--基本数据类型( Sets(集合)--不可变数据)
集合是不是像 python3.6 中的 dicts 一样排序