python之字典的相关操作

一、什么是字典

  dict 用{}表示,用来存放键值对数据

  {key:value}

  键:具有唯一性,不能重复,不可变

    必须是可哈希的(不可变的数据类型)

    字典是无序的,没有索引

  值:

    没有任何限制

二、字典的增、删、改、查

  2.1增

  dic['key']  = value   新增, 如果键存在于字典中,则强制修改。

  setdefult(key,value)如果键在在字典中存在,则不进行任何操作,不存在则进行添加

dic = {'易大师':'剑圣','剑豪':'托儿所','草丛伦':'大宝剑'}
dic['火女'] = '人头狗'   # 新增
# print(dic)
dic.setdefault('火女','安妮')     # 如果在字典中存在就不进行任何操作,不存在就进行添加
dic.setdefault('火女','火男')

  2.2删

  pop(key)通过键删除,返回被删除的值

  del dic[key]  没有返回值

  dic.clear()   清空字典

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

  

dic = {'易大师':'剑圣','剑豪':'托儿所','草丛伦':'大宝剑'}
ret = dic.pop('易大师')  #通过key删除  返回被删除的value
print(ret)
del dic['剑豪']
dic.clear()   # {}

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

  2.3改

  

dic['剑豪'] = '哈莎阁'   # 强制修改

    dic1 = {'火女':'安妮','火男':'布兰德','维恩':'暗影猎手','剑豪':'哈莎阁'}
    dic1.update(dic) # 将一个字典中没有的元素添加值另一个字典中,如果有相同键,则修改原来的值

    print(dic1)

  2.4查

  for 循环 默认获取字典中的键

  dic[key] 通过键查询,查不到会报错

  dic.get(key)  查不到时候返回None

  setdefault(key)  没有返回值

dic = {'易大师':'剑圣','剑豪':'托儿所','草丛伦':'大宝剑'}
dic['剑豪'] = '哈莎阁'   # 强制修改

dic1 = {'火女':'安妮','火男':'布兰德','维恩':'暗影猎手','剑豪':'哈莎阁'}
dic1.update(dic)

print(dic1)

  

三、字典中独特的操作方法

  keys    values    items

  dic.keys()   得到一个高仿列表,可迭代。获取到字典中的每一个键

  dic.values  获取字典中的每一个值,得到一个仿真列表

  dic.items    获取字典中的键值对,得到一个仿真列表

print(dic.keys())  # (高仿列表)
    print(dic.values())  # (高仿列表)
    print(dic.items())
    for i in dic.keys():
        print(i)

    for i in dic:
        print(i)     #获取到字典中的每一个键

    for i in dic.values():
        print(i)     #获取到字典中的每一个值

    for i in dic.items():
        print(i)

四、解构(解包)

a,b = '12'   #将后边解构打开按位置赋值给变量 支持  字符串 列表 元组
    print(a)
    print(b)
    dic = {'易大师':'剑圣','剑豪':'托儿所','草丛伦':'大宝剑'}
    for a,b in dic.items():
        print(a)
        print(b)


    dic1 = {}

    dics = dic1.fromkeys([1,2,3],'abc')

五、字典的嵌套
  与列表的嵌套相似,一层一层看。

dic = {
    'name':'汪峰',
    'age':43,
    'wife':{
        'name':'国际章',
        'age':39,
        'salary':100000
    },
    'baby':[
        {'name':'熊大','age':18},
        {'name':'熊二','age':15},
    ]

}

dic['baby'][0]['age'] = 19

print(dic)

猜你喜欢

转载自www.cnblogs.com/baijinshuo/p/9402635.html
今日推荐