字典定义
字典是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: '国籍'