字典

字典(dict)是python中唯一的一个映射类型.他是以{ }括起来的键值对组成. 在dict中key是
唯一的。

字典的键可以的类型:int,str,tuple,bool  (是不可变的类型)(可哈希的)

字典的键不可以的类型: list,dict,set  (是可变的类型) (不可哈希的)

字典的值没有要求,可以保存任意类型的数据

 

字典的增删改查

1.增加

  dic = {}

  dic ['name']='周润发'    # 如果dict中没有出现这个key,就会增加一个key-value的组合
  

  dic.setdefault('age',18)  # 如果在字典中存在就不进行任何操作,不存在就添加

  dic.setdefault('age',20)  # 不发生任何变化

 

2.删除

  字典没有remove删除的方法

  字典删除方法pop,del,clear

dic.pop()  # 指定删除键值,返回的是被删除的值,如果指定删除的key不存在,则报错

del dic[]  #删除指定的key

dic.clear()  # 清空字典中的所有内容

dic.popitem() # 随机删除,返回值  一个元组(key,value)

 

3.修改

dic['name]='raccoon'

dic1 = {'name':'little','sex':'男'}

dic.update(dic1)  #把dic1中的内容更新到dic中. 如果key重名. 则修改替换. 如果不存在key, 则新增

 

4.查找

for i in dic:

  print(i)  # 默认获取的是字典的键

dic['name']   # 获取值,若键不存在,则会报错

dic.get['name']  # 获取值,若键不存在返回None

dic.get['sss','没有这个键'] # 可以设置默认返回值,若没有键则返回你默认设定的,有则返回值

 

5.其他操作(字典独特的方法)

dic.keys()   # 获取所有的键 得到的是高仿的列表  可以用for循环迭代,获取字典中每一个键

dic.values() # 获取所有的值 得到的是高仿的列表  可以用for循环迭代,获取字典中每一个值

dic.items() # 获取所有的键和值 得到的是高仿的元组  可以用for循环迭代,获取字典中每一个键和值

解构(解包)

a,b = (1,2)  # 将后面结构打开按位置赋值给变量  支持字符串,列表,元组

print(a)   # 1

print(b)   # 2

 

for a,b in dic.items():

  print(a)  # 得键

  print(b)  # 得值

 

6.字典的嵌套

dic = {

'name':'汪峰',

'age':'44',

'wife':{

'name':'章子怡',

'age':'40'

},

'children':['第一个孩子','第二个孩子']

}

print(dic.get('wife').get('name'))

print(dic.get('children')[1])

 

 

posted on 2019-04-24 19:18  Little_Raccoon  阅读(207)  评论(0编辑  收藏  举报