第4章 Python数据类型-字典

字典定义

字典是Python的“键-值”对类型,键是唯一的,不可变类型都可作为字典的键。

定义一个空字典

d={}

第一个字典

d={'姓名':'小明','年龄':19,"性别":'男'}

添加值

定义一个空字典

d={}

添加姓名

d['姓名']='小明'

添加年龄

d['年龄']=19

添加性别

d['性别']='男'

查看d

{'姓名': '小明', '年龄': 19, '性别': '男'}

获取值

定义一个字典

d={'姓名':'小明','年龄':19,"性别":'男'}

获取姓名

d['姓名']#'小明'

获取年龄

d['年龄']#19

获取性别

d['性别']#'男'

不存在时报错

d['国籍']#KeyError: '国籍'

修改值

定义一个字典

d={'姓名':'小明','年龄':19,"性别":'男'}

修改姓名为小红

d['姓名']='小红'

修改年龄为18

d['年龄']=18

修改性别为女

d['性别']='女'

查看d

{'姓名': '小红', '年龄': 18, '性别': '女'}

删除值

定义一个字典

d={'姓名':'小明','年龄':19,"性别":'男'}

删除姓名

del d['姓名']

删除年龄

del d['年龄']

删除性别

del d['性别']

查看d

{}

不存在时报错,删除年龄

del d['年龄']

in和not in

定义一个字典

d={'姓名':'小明','年龄':19,"性别":'男'}

字典里有姓名吗?

'姓名' in d  #返回True

字典里没有姓名吗?

'姓名' not  in  d #返回False

字典里有国籍吗?

'国籍' in d  #返回False

字典里没有国籍吗?

'国籍' not in d  #返回True

keys

获取字典中所有的键

d={'姓名':'小明','年龄':19,"性别":'男'}
d.keys() 

返回:dict_keys([‘姓名’, ‘年龄’, ‘性别’])

values

获取字典所有的值

d={'姓名':'小明','年龄':19,"性别":'男'}
d.values() 

返回:dict_values([‘小明’, 19, ‘男’])

items

获取字典中所有的键值对

d={'姓名':'小明','年龄':19,"性别":'男'}
d.items() 

返回:dict_items([(‘姓名’, ‘小明’), (‘年龄’, 19), (‘性别’, ‘男’)])

get 获取值

定义字典

d={'姓名':'小明','年龄':19,"性别":'男'}

获取姓名

d.get('姓名') #返回小明

获取国籍,不存在,返回空

d.get('国籍') #返回空

指定不存在时的默认值

d.get('国籍','不存在') #返回不存在

setdefault 设置值

添加键,并设置默认值

定义字典

d={'姓名':'小明','年龄':19,"性别":'男'}

添加国籍

d.setdefault('国籍','中国')

查看字典

{'姓名': '小明', '年龄': 19, '性别': '男', '国籍': '中国'}

update 更新值

存在时更新,不存在时添加

定义字典

d={'姓名':'小明','年龄':19,"性别":'男'}

更新姓名

d.update({'姓名':'小红'})

查看d

{'姓名': '小红', '年龄': 19, '性别': '男'}

更新国籍,没有国籍,所以添加。

d.update({'国籍':'中国'})

查看d

{'姓名': '小红', '年龄': 19, '性别': '男', '国籍': '中国'}

clear 清空

清空字典所有的元素。

定义一个字典

d={'姓名':'小明','年龄':19,"性别":'男'}

清空字典

d.clear()

查看d

d.clear()

len 长度

获取字典键值对的个数

定义一个字典

d={'姓名':'小明','年龄':19,"性别":'男'}

查看长度,

len(d) #返回3

定义一个空字典

d={}

查看长度

len(d) #返回0

pop弹出

从字典中删除相应的键,并返回对应的值。

定义一个字典

d={'姓名':'小明','年龄':19,"性别":'男'}

弹出姓名

d.pop('姓名')

当键不存在时报错

d.pop('国籍') #KeyError: '国籍'

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值