Python组合数据类型 之 字典类型

目录

  • 字典类型
  • 创建字典
  • 查找操作
  • 修改或添加字典元素
  • 删除字典元素
  • 遍历操作

字典类型

  • 字典是包含若干"键:值"元素的无序可变序列
  • 定义字典时,每个元素的键和值用冒号分隔,元素之间用逗号分隔,所有的元素放在一对大括号"{}"中。具体格式为:{<键1:值1>,<键2:值2>,…,<键n:值n>}
  • 字典中的"键"不允许重复,而"值"是可以重复的。

创建字典

  • 使用=将一个字典赋值给一个变量
>>>a_dict={'server':'db.diveintopython3.org','database':'mysql'}
>>>a_dict    #查看字典中的所有键值对
{'database':'mysql','server':'db.diveintopython3.org'}
  • 创建空字典
>>>x={}    #空字典 或 x=dict()
>>>x
{}

查找操作

查找与指定键相对应的值

  • 以键作为下标可以读取字典元素,若键不存在则抛出异常
>>>aDict={'name':'Dong','sex':'male','age':37}
>>>aDict['name']    #查找键 'name'所对应的值'Dong'
'Dong'
>>>aDict['tel']    #键不存在,抛出异常
Traceback(most recent call lasT):
 File"<pyshell#53>",line 1,in <module>
  aDict['tel']
KeyError:'tel'
  • 使用字典对象的get方法获取指定键对应的值,并且可以在键不存在的时候返回指定值。
>>>print(aDict.get('address'))
None
>>>print(aDict.get('address','SDIBT'))
SDIBT
>>>aDict['score']=aDict.get('score',[])
>>>aDict['score'].append(98)
>>>aDict['score'].append(97)
>>>aDict
{'age':37,'score':[98,97],'name':'Dong','sex':'male'}

修改或添加字典元素

  • 当以指定键为下标为字典赋值时:
  1. 若键存在,则可以修改该键的值;
  2. 若不存在,则表示添加一个键值对。
>>>aDict['age']=38    #修改元素值
>>>aDict
{'age':38,'name':'Dong','sex':'male'}
>>>aDict['address']='SDIBT'    #增加新元素
>>>aDict
{'age':38,'address':'SDIBT','name':'Dong','sex':'male'}

删除字典元素

dict={'name':'Tom','age':22,'email':'123456@qq.com'}
del dict['name']    #删除键是'name'的条目
dict.clear()    #清空字典所有条目
del dict    #删除字典

遍历操作

  • 字典对象的items()方法可以返回字典的键、值对
  • 字典对象的keys()方法可以返回字典的键
  • 使用字典对象的values()方法可以返回字典的值
>>>aDict={'name':'Dong','sex':'male','age':37}
>>>for item in aDict.items():    #输出字典中所有元素
       print(item)
#('age':37)
#('name':'Dong')
#('sex':'male')

知识点整理不易,如果对你有帮助,给个免费的赞支持一下吧!

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

张同学啦

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值