Python set集合类型操作总结

yipeiwu_com6年前Python基础

Python中除了字典,列表,元组还有一个非常好用的数据结构,那就是set了,灵活的运用set可以减去不少的操作(虽然set可以用列表代替)

小例子

1.如果我要在许多列表中找出相同的项,那么用集合是最好不过的了,用集合只用一行就可以解决

复制代码 代码如下:

x & y & z # 交集

2.去重

复制代码 代码如下:

>>> lst = [1,2,3,4,1]
>>> print list(set(lst))
[1, 2, 3, 4]

用法

注意set因为没有位置的概念所以list方法切片什么的都没有用,需要的时候再转化为list

内建函数创建set

复制代码 代码如下:

set([1, 2, 3, 4])

基本操作

复制代码 代码如下:

t.add('x')            # 添加一项
s.update([10,37,42])  # 在s中添加多项

t.remove('H') # 删除一项

len(s)  # set 的长度

x in s # 测试 x 是否是 s 的成员 

x not in s   # 测试 x 是否不是 s 的成员 

s.issubset(t) 
s <= t  # 测试是否 s 中的每一个元素都在 t 中 

s.issuperset(t) 
s >= t  # 测试是否 t 中的每一个元素都在 s 中 

s.union(t) 
s | t  # 返回一个新的 set 包含 s 和 t 中的每一个元素 

s.intersection(t) 
s & t  # 返回一个新的 set 包含 s 和 t 中的公共元素 

s.difference(t) 
s - t  # 返回一个新的 set 包含 s 中有但是 t 中没有的元素 

s.symmetric_difference(t) 
s ^ t  # 返回一个新的 set 包含 s 和 t 中不重复的元素 

s.copy()  # 返回 set “s”的一个浅复制 

相关文章

TensorFlow高效读取数据的方法示例

概述 最新上传的mcnn中有完整的数据读写示例,可以参考。 关于Tensorflow读取数据,官网给出了三种方法: 供给数据(Feeding): 在TensorFlow程序运行的每...

Flask框架路由和视图用法实例分析

本文实例讲述了Flask框架路由和视图用法。分享给大家供大家参考,具体如下: 创建一个简单flask框架程序 #1.导入Flask类 from flask import Flask...

python 导入数据及作图的实现

我们经常需要导入数据,按列提取 XY作图 方法一、 filename='/home/res/user/csluo/test.txt' #将文件名赋值为变量 X,...

利用Python如何将数据写到CSV文件中

前言 我们从网上爬取数据,最后一步会考虑如何存储数据。如果数据量不大,往往不会选择存储到数据库,而是选择存储到文件中,例如文本文件、CSV 文件、xls 文件等。因为文件具备携带方便、查...

python中@property和property函数常见使用方法示例

本文实例讲述了python中@property和property函数常见使用方法。分享给大家供大家参考,具体如下: 1、基本的@property使用,可以把函数当做属性用 class...