python学习笔记(五):内置数据结构集合与字典

一.集合

集合的定义

集合(set)是一个无序的不重复元素序列。1,2,3,4,1,2,3=1,2,3,4

创建集合

集合的创建:
1).使用大括号{}或者set0函数创建集合;
2).注意:
·创建一个空集合必须用set0而不是{}
{}是用来创建一个空字典。
在这里插入图片描述

去重

在这里插入图片描述

集合增删

在这里插入图片描述

随机移除元素

在这里插入图片描述

关系运算

在这里插入图片描述

排序

在这里插入图片描述

fronzenset

frozenset是set的不可变版本,因此set集合中所有能改变集合本身的方法(如add、remove、discard、xxx_update等),frozenset 都不支持;set集合中不改变集合本身的方法,fronzenset都支持。

作用:
rozenset的这些方法和set 集合同名方法的功能完全相同。frozenset的作用主要有两点:
·当集合元素不需要改变时,使用frozenset代替set更安全。
·当某些API需要不可变对象时,必须用frozenset代替set。比如 dict的key必须是不可变对象,因此只能用frozenset;再比如set本身的集合元素必须是不可变的,因此set 不能包含set,set只能包含frozenset。
在这里插入图片描述

二.字典

在这里插入图片描述

定义

字典是另一种可变容器模型,且可存储任意类型对象。
键一般是唯一的,如果重复最后的一个键值对会替换面的,值不需要唯一。
在这里插入图片描述
判断字符是否在字典内,注意此处的字符为键值key的内容,不是value值
在这里插入图片描述

字典打印

在这里插入图片描述
打印value
在这里插入图片描述
添加及修改字典内value值
在这里插入图片描述
循环打印字典内容:
在这里插入图片描述

setdefault:默认值

在这里插入图片描述

字典元素删除

在这里插入图片描述
在这里插入图片描述

defaultdict

collections.defaultdict类,本身提供了默认值的功能,默认值可以是整形,列表,集合等.
defaultdict 是dict的子类。但它与dict 最大的区别在于,如果程序试图根据不存在的key 访问 value,会引发KeyError 异常;而 defaultdict 提供default factory 属性,该为不存在的key来自动生成生成默认的value。
需求:
我们想要一个能将键(key)映射到多个值的字(即所谓的一键多值字典)
解决方案:
1).字典是一种关联容器,每个键都映射到一个单独的值上。如果想让键映射到多个值,需要将这些多个值保存到容器(列表或者集合)中。
2).利用collections模块中的defaultdict类自动初始化第一个值,这样只需关注添加元素。
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值