Python学习笔记总结1.10—集合

认识集合
集合是一个数学概念:由一个或多个确定的元素所构成的整体叫做集合。
集合的三个特征
1、确定性(元素必须可hash)
2、互异形(去重)
3、无序性(集合中的元素没有先后之分),如集合{3,4,5}和{3,4,5}算作同一个集合
注意:集合存在的意义就在于去重和关系运算
用集合解决问题

gather-f = {"张三","李四","王五"}#集合定义
gather-s = {"张三","李四","赵六"}
gather-f_gather-s = gather-f&gather-s

集合的定义

l= {1,2,3,1}  #此处应说明集合“去重”的效果
#定义可变集合
>>> set_test=set('hello') #此处应说明集合的“无序性”
>>> set_test
{'l', 'o', 'e', 'h'}
#改为不可变集合frozenset
>>> f_set_test=frozenset(set_test)
>>> f_set_test
frozenset({'l', 'e', 'h', 'o'})

集合的关系运算
|=:合集,也叫并集 :并集除了合并效果之外还有去重功能
-=:差集 :只存在单一个集合而不在另一个集合的值
,^=:对称差集 :只存在单一个集合的值

in,not in:判断某元素是否在集合内
==,!=:判断两个集合是否相等

集合的常用操作
元素的增加
单个元素的增加 : add(),add的作用类似列表中的append
对序列的增加 : update(),而update类似extend方法,update方法可以支持同时传入多个参数:

a={1,2}
a.update([3,4],[1,2,7])
a
{1, 2, 3, 4, 7}
a.update("hello")
a
{1, 2, 3, 4, 7, 'h', 'e', 'l', 'o'}
a.add("hello")
a
{1, 2, 3, 4, 'hello', 7, 'h', 'e', 'l', 'o'}

元素的删除
集合删除单个元素有两种方法:
元素不在原集合中时:
set.discard(x)不会抛出异常
set.remove(x)会抛出KeyError错误

a={1,2,3,4}
a.discard(1)
a
{2, 3, 4}
a.discard(1)
a
{2, 3, 4}
a.remove(1)
Traceback (most recent call last):
  File "<input>", line 1, in <module>
KeyError: 1

pop():由于集合是无序的,pop返回的结果不能确定,且当集合为空时调用pop会抛出KeyError错误,
clear():清空集合

a={3,"a",2.1,1}
a.pop()
a.pop()
a.clear()
a
set()
a.pop()
Traceback (most recent call last):
  File "<input>", line 1, in <module>
KeyError: 'pop from an empty set'

总结日期:2019.7.21
总结人:王紫烨

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值