字典是一个容器类,可以用来存放数据
列表存储数据的特点:1.有序的 2.每个数据都有一个索引,通过索引可以对数据进行查询、修改、删除
字典存储数据的特点:key:value(键值对)
key必须是不可变的,一般使用字符串作为字典中的key,也可以使用数字等不可变类型的值
key是唯一的,如果有多个相同的的key的情况,保留最后一个key对用的值
字典中存储的数据是没有顺序的
定义一个字典,如下:
dict_1={'name':'zhangsan','age':22,'phone':110,'sex':'男','name':'wangwu'}
一、取出字典中对应的值(两种方法)
1.根据key取出字典中的值
name=dict_1['name']
2.get( )函数,获取字典中对应key的值,如果key不存在,取默认值,如果key存在,取出对应的结果
name=dict_1.get('name','0')
二、向字典中添加数据
#如果这个key不存在,添加进去,如果key存在,修改key对应的值
dict_1['ssss']='4s'
dict_1['name']='4s'
三、删除字典中的数据(四种方式)
1.del根据关键字删除
del dict_1['ssss']
2.pop(key)根据关键字删除 key是必要参数,必须存在,是移出的数据对应的key
s=dict_1.pop('name')
3.popitem随机从字典中取出一个键值对,并且将键值放在元组中
s=dict_1.popitem()
print(s)
4.clear( )函数删除字典中的所有键值对
dict_1.clear()
四、keys( )函数获取字典中所有的key
keys=dict_1.keys()
#取出所有的keys keys是一个列表
for key in keys:
#根据key取出对应的值
value=dict_1[key]
print('%s:%s'%(key,value))
运行结果:
dict_keys(['phone', 'sex'])
phone:110
sex:男
五、values( )函数获取字典中所有的value
values=dict_1.values()
print(values)
#dict_values([22, '男']) values是一个列表
#for循环取出所有的value
for value in values:
print(value)
运行结果:
dict_values([110, '男'])
110
男
六、items( )函数获取字典中的所有键值对
#获取字典中所有的键值对
items=dict_1.items()
#元组是不可变的 元组的用法和列表的用法一样 索引从0开始
# items:[('age', 22), ('phone', 110)] items是一个列表
#for 循环遍历items(两种方式)
#方法一
for item in items:
#从元组中根据索引取出数据
key=item[0]
value=item[1]
print('键:%s 值:%s'%(key,value))
#方法二:枚举
for key,value in items:
print(key,value)
七、判断字典中是否拥有某个key
#python2 直接使用dict_1.has_key(key) 如果key存在,返回True,不存在,返回False
#python3 使用key in dict_1.keys 如果存在返回True 不存在返回False
#python3 使用key not in dict_1.keys 如果不存在返回True 存在返回False
if 'sex' in dict_1:
print('有这个key')
else:
print('没有这个key')