python函数第一章

在这里插入图片描述

元组

元组的基本定义

  • 元组是不可变序列,一般情况下数据不改变
  • 创建元组,( ) 可以创建一个空的元组,如图:在这里插入图片描述
  • 常见问题:TypeError: ‘tuple’ object does not support item assignment -元组的对象不可修改,如图:对下岗
  • 如果元组不为空,则里面至少有一个逗号,在这里插入图片描述

元组解包

  • 元组的解包就是将元组中每一个元组赋值给一个变量,解包时,变量数量需要和元组中的元素数量保持一致,如果不一致可以在变量前➕✳️,变量就会获取元组中所有剩余的变量
  • 常见问题:ValueError: too many values to unpack (expected 3)-不够,错误如图在这里插入图片描述
  • 所以➕上✳️之后可以补齐,但需要💭的是如果有无数个元素应该怎么做?在这里插入图片描述
    在这里插入图片描述

对象的比较

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

  • 如果所示对象当中保存了三个数据,分别是🆔- 标识, ** type- 类型** ,value- 值
  • 可变对象是对象中的value可以改变
  • 修改变量等于重新赋值,会改变变量所指向的对象,🆔和value 都变了在这里插入图片描述
  • 不给变量赋值,只是根据索引值修改序列中的元素,相同的🆔,执行结果也相同,如图在这里插入图片描述
  • 如果更改变量,结果在这里插入图片描述
  • 面向对象:==!= 比较的是值, is 和 is not 比较的是🆔, 比较两个对象是否是同一个对象,如图在这里插入图片描述
    在这里插入图片描述

字典(dict)

定义以及特性

  • 属于一种新的数据结构称之为映射(mapping),字典的作用和列表类似,都是用来存储对象的容器
  • 列表存储数据的性能很好,但是查询数据性能很差
  • 在字典当中每一个元素都有唯一的一个名字,通过这个唯一的名字我们就可以快速查找到指定的元素
  • 字典的存储性能相对较差,查询数据性能相当好

Key(键)

  • 在字典中唯一的名字我们称:键(key),通过key可以快速查询value,我们称之为键值(key-value)

  • 每个字典中可以有多个键值对,每个键值对称之为一项(item)

  • 语法:{key:value,key:value…etc}

  • 字典的键最好不要重复,重复出现后会替换前面的

  • 如 d = {‘name’ : ‘葫芦娃’ , ‘age’ : 10 , ‘sex’ : ‘男’}

  • d = {
    ‘name’ : ‘葫芦娃’ ,
    ‘age’ : 10 ,
    ‘sex’ : ‘男’
    }

  • 根据来获取, 如图所示在这里插入图片描述

字典的使用

  • 使用**{}**
  • 语法:{key:value,key:value,…etc.}
    在这里插入图片描述
  • **dict( )**函数也可以将一个包含有双值子序列的序列转换为字典
  • 双值序列,序列中只有两个值,例如:‘mk’,[4,5],(1,‘b’)
  • 子序列 :序列中元素也是一个序列,那么我们就称这个元素为子序
    在这里插入图片描述
  • 语法:d[key]可以根据字典的键来获取元素key值加’ ',不加会当成变量处理, 如图在这里插入图片描述
  • 自定义异常:get(key,[default])函数也可以获取字典的value,如果获取的key值不存在会返回Nonedefault也可以指定一个默认值来作为第二个参数,如果获取不到key,则返回默认值, 如图在这里插入图片描述
  • 修改字典,d[key]=value, 可以在序列中修改key值或添加** key-value**在这里插入图片描述
  • setdefault()方法,向字典中添加k-v, 如果key已经存在字典中,则返回key值,不对字典做任何操作, 如果key不存在,则想字典中添加一个key在这里插入图片描述
  • update(), 是将其他字典中的k-v添加到当前字典,重复的key值覆盖在这里插入图片描述
    在这里插入图片描述
  • 删除 del 来删除key-value, a和b被删除
    在这里插入图片描述
  • popitem()随机删除字典中的一个k-v对,一般都会删除最后一个k-v,删除之后会把删除的k-v作为返回值返回在这里插入图片描述
  • pop(key,[default]),可以根据key来删除k-v,它的返回值是删除value值, 如图在这里插入图片描述
  • 清空字典 d. clear( )->print(d)#{}

作业

  • 作业一:a={‘name’:‘123’,‘data’:{‘result’:[‘src’:python1’}, {‘src’:‘python2’},{‘src’:‘python3’}]}}找到python1/2/3 在这里插入图片描述
  • 作业二:有如下值列表[11,22,33,44,55,66,77,88,99,90]将所有大于66的值保存至字典的第一个key中,将小于66值保存在第二个key值中
    在这里插入图片描述
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值