python基础知识小结之集合

yipeiwu_com6年前Python基础

集合

特点:集合对象是一组无序排列的可哈希的值:集合成员可以做字典的键,与列表和元组不同,集合无法通过数字进行索引。此外,集合中的元素不能重复。

 定义

 set() -> new empty set object
 set(iterable) -> new set object
 s = {0}

应用:去重

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


常用操作

集合支持一系列标准操作,包括并集|、交集&、差集-和对称差集^
子集< <=及超集> >=
增删,清空操作

具体见如下代码例子

>>> lst1 = [1,2]
>>> lst2 = [2,3]
>>> a = set(lst1) #定义集合
>>> b = set(lst2)
>>> a,b
({1, 2}, {2, 3})
>>> a|b #取并集
{1, 2, 3}
>>> a&b #取交集
{2}
>>> a-b #取差集
{1}
>>> b-a #取差集
{3}
>>> list(a) #转换集合为列表,也可转为元组,如 tuple(a)返回 (1,2)
[1, 2]
>>> a < b #子集判断
False
>>> c = set([1])
>>> c
{1}
>>> c < a #子集判断
True
>>> c <= a #子集判断
True
>>> d = set([1,2,3])
>>> d > a #超集判断
True
>>> 
>>> d >= a #超集判断
True
>>> a,b
({1, 2}, {2, 3})
>>> a^b # 对称差集 
{1, 3}
>>> c
{1}
>>> d
{1, 2, 3}
>>> a^d # 对称差集 
{3}
>>> s = {0}
>>> type(s)
<class 'set'>
>>> 
>>> print(s, len(s)) #集合长度 
{0} 1
>>> s.add('1') #添加元素
>>> s
{0, '1'}
>>> s.update([2,3]) #添加多个元素
>>> s
{0, 2, 3, '1'}
>>> s.remove(2) #删除指定元素,如没有则报错
>>> s
{0, 3, '1'}
>>> s.pop() #随便删元素(貌似没什么用)
0
>>> s
{3, '1'}
>>> s.discard(3) #删除指定元素
>>> s
{'1'}
>>> s.clear() #清空集合
>>> s
set()

相关文章

python3.6中@property装饰器的使用方法示例

本文实例讲述了python3.6中@property装饰器的使用方法。分享给大家供大家参考,具体如下: 1、@property装饰器的使用场景简单记录如下: 负责把一个方法变成属性...

使用python编写简单的小程序编译成exe跑在win10上

使用python编写简单的小程序编译成exe跑在win10上

每天的工作其实很无聊,早知道应该去IT公司闯荡的。最近的工作内容是每逢一个整点,从早7点到晚11点,去查一次客流数据,整理到表格中,上交给素未蒙面的上线,由他呈交领导查阅。   人的精力...

利用python将json数据转换为csv格式的方法

假设.json文件中存储的数据为: {"type": "Point", "link": "http://www.dianping.com/newhotel/22416995", "c...

python3.6 实现AES加密的示例(pyCryptodome)

python3.6 实现AES加密的示例(pyCryptodome)

起因 前端日子写完的Python入库脚本,通过直接读取配置文件的内容(包含了数据库的ip,数据库的用户名,数据库的密码),因为配置文件中的数据库密码是明文显示的,所以不太安全,由此对其进...

python opencv 图像尺寸变换方法

利用Python OpenCV中的 cv.Resize(源,目标,变换方法)就可以实现变换为想要的尺寸了 源文件:就不用说了 目标:你可以对图像进行倍数的放大和缩小 也可以直接的输入尺寸...