码迷,mamicode.com
首页 > 其他好文 > 详细

字典的增删改查

时间:2019-07-27 10:02:55      阅读:117      评论:0      收藏:0      [点我收藏+]

标签:打开   列表   数据   清空   可变   没有   tde   value   表示   

 

1、字典  dict :   字典从3.6版本已经默认改成有序的   。==== 字典还是无序的   

          字典用 { } 来表示   里面有键值对数据   { key : value }

          键 key  :  要保证key唯一性(不能重复,不可以变)必须是可哈希的  不可变的数据类型就可以是字典的键

          

 2、字典的新增:

    1) 新增

    dic={‘dic_‘:‘字典‘ , ‘string_‘:‘字符串‘ , ‘int_‘:‘整数‘}

    dic[‘type_‘]=‘类型‘
    print(dic)

    {‘dic_‘: ‘字典‘, ‘string_‘: ‘字符串‘, ‘int_‘: ‘整数‘, ‘type_‘: ‘类型‘}

     2)setdefault 新增

    dic={‘dic_‘:‘字典‘ , ‘string_‘:‘字符串‘ , ‘int_‘:‘整数‘}
    dic.setdefault(‘type_‘,‘类型‘)
     print(dic)

     --{‘dic_‘: ‘字典‘, ‘string_‘: ‘字符串‘, ‘int_‘: ‘整数‘, ‘type_‘: ‘类型‘}

    setdefault的坑:如果在字典中存在就不做任何操作,不存在就添加

    dic={‘dic_‘:‘字典‘ , ‘string_‘:‘字符串‘ , ‘int_‘:‘整数‘}

    dic.setdefault(‘type_‘,‘类型‘)

    dic.setdefault(‘type_‘,‘类型——‘)
    print(dic)

    --{‘dic_‘: ‘字典‘, ‘string_‘: ‘字符串‘, ‘int_‘: ‘整数‘, ‘type_‘: ‘类型‘}

3.删除:

   1)  pop   ( ‘key‘ )

    dic={‘dic_‘:‘字典‘ , ‘string_‘:‘字符串‘ , ‘int_‘:‘整数‘}
     dic.pop(‘dic_‘)
    print(dic)

    -----{‘string_‘: ‘字符串‘, ‘int_‘: ‘整数‘}

   通过pop(‘key‘)删除返回值

    dic={‘dic_‘:‘字典‘ , ‘string_‘:‘字符串‘ , ‘int_‘:‘整数‘}
    ret=dic.pop(‘dic_‘)
    print(ret)

    ===  字典

   2)  del  变量 [‘key‘ ]  

    dic={‘dic_‘:‘字典‘ , ‘string_‘:‘字符串‘ , ‘int_‘:‘整数‘}
    del dic[‘int_‘]
     print(dic)

     ===={‘dic_‘: ‘字典‘, ‘string_‘: ‘字符串‘}

  3) clear  清空

   dic={‘dic_‘:‘字典‘ , ‘string_‘:‘字符串‘ , ‘int_‘:‘整数‘}  

    dic.clear ()

    print(dic)

   ====  {  }----空列表

4)popitem (随机删除,但是试了很多次都是最后一个)返回一个元组(key,value)

   dic={‘dic_‘:‘字典‘ , ‘string_‘:‘字符串‘ , ‘int_‘:‘整数‘}
   ret = dic.popitem()
   print(ret)

  5、改:

    强制修改

   dic={‘dic_‘:‘字典‘ , ‘string_‘:‘字符串‘ , ‘int_‘:‘整数‘}

   dic[‘int_‘]=‘强制修改‘
    print(dic)

    ====={‘dic_‘: ‘字典‘, ‘string_‘: ‘字符串‘, ‘int_‘: ‘强制修改‘}

 2)update----升级或者更新

   dic={‘dic_‘:‘字典‘ , ‘string_‘:‘字符串‘ , ‘int_‘:‘整数‘}
    dic2={‘god‘:‘小狗‘ , ‘cat‘:‘小猫‘ , ‘boy‘:‘男孩‘}
    dic.update(dic2)
    print(dic)

    ==={‘dic_‘: ‘字典‘, ‘string_‘: ‘字符串‘, ‘int_‘: ‘整数‘, ‘god‘: ‘小狗‘, ‘cat‘: ‘小猫‘, ‘boy‘: ‘男孩‘}

   两种不同的结果:

dic={‘dic_‘:‘字典‘ , ‘string_‘:‘字符串‘ , ‘int_‘:‘整数‘}
dic2={‘god‘:‘小狗‘ , ‘cat‘:‘小猫‘ , ‘boy‘:‘男孩‘,‘int_‘:‘整数升级‘} 
dic.update(dic2)
print(dic)==={‘dic_‘: ‘字典‘, ‘string_‘: ‘字符串‘, ‘int_‘: ‘整数升级‘, ‘god‘: ‘小狗‘, ‘cat‘: ‘小猫‘, ‘boy‘: ‘男孩‘}

dic={‘dic_‘:‘字典‘ , ‘string_‘:‘字符串‘ , ‘int_‘:‘整数‘}
dic2={‘god‘:‘小狗‘ , ‘cat‘:‘小猫‘ , ‘boy‘:‘男孩‘,‘int_‘:‘整数升级‘}
dic2.update(dic)
print(dic2)=={‘god‘: ‘小狗‘, ‘cat‘: ‘小猫‘, ‘boy‘: ‘男孩‘, ‘int_‘: ‘整数‘, ‘dic_‘: ‘字典‘, ‘string_‘: ‘字符串‘}

谁在前面就升级谁

6、查

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

dic={‘dic_‘:‘字典‘ , ‘string_‘:‘字符串‘ , ‘int_‘:‘整数‘}
for i in dic:
print(i)

==

dic_
string_
int_

2)查看1

dic={‘dic_‘:‘字典‘ , ‘string_‘:‘字符串‘ , ‘int_‘:‘整数‘}
print(dic[‘dic_‘])==字典

3)查看2

dic={‘dic_‘:‘字典‘ , ‘string_‘:‘字符串‘ , ‘int_‘:‘整数‘}
print(dic.get(‘dic_‘))==字典

查看2和查看1有什么不一样----查看1如果查字典没有的就报错,查看2有返回值,默认是None,可以自己设定

dic={‘dic_‘:‘字典‘ , ‘string_‘:‘字符串‘ , ‘int_‘:‘整数‘}
print(dic.get(‘dic_3‘,‘你傻啊,没有‘))==你傻啊,没有

4)查看3

dic={‘dic_‘:‘字典‘ , ‘string_‘:‘字符串‘ , ‘int_‘:‘整数‘}
print(dic.setdefault(‘dic_‘))==字典

查没有的会返回None

5)查看4

dic={‘dic_‘:‘字典‘ , ‘string_‘:‘字符串‘ , ‘int_‘:‘整数‘}
print(dic.keys())==dict_keys([‘dic_‘, ‘string_‘, ‘int_‘])

([‘dic_‘, ‘string_‘, ‘int_‘])这是一个高仿列表,那么就有列表的特性

dic={‘dic_‘:‘字典‘ , ‘string_‘:‘字符串‘ , ‘int_‘:‘整数‘}
for i in dic.keys():
print(i)===dic_   s tring_    int_

6)dic={‘dic_‘:‘字典‘ , ‘string_‘:‘字符串‘ , ‘int_‘:‘整数‘}
print(dic.values())==dict_values([‘字典‘, ‘字符串‘, ‘整数‘])

这是一个高仿列表,那么就有列表的特性,,就不重复操作了

7)

dic={‘dic_‘:‘字典‘ , ‘string_‘:‘字符串‘ , ‘int_‘:‘整数‘}
print(dic.items())===dict_items([(‘dic_‘, ‘字典‘), (‘string_‘, ‘字符串‘), (‘int_‘, ‘整数‘)])

新增知识点:  解构    将后面打开按位置赋值给变量,支持元组、字符串、列表

dic={‘dic_‘:‘字典‘ , ‘string_‘:‘字符串‘ , ‘int_‘:‘整数‘}
for a,b in dic.items():
print(a)
print(b)==

dic_
字典
string_
字符串
int_
整数

 

字典的增删改查

标签:打开   列表   数据   清空   可变   没有   tde   value   表示   

原文地址:https://www.cnblogs.com/yangguogui/p/11253596.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!