美文网首页Python基础系列
Python字典的增删改查以及嵌套

Python字典的增删改查以及嵌套

作者: 我爱学python | 来源:发表于2019-07-22 19:37 被阅读1次

    #字典

        #基础数据类型之一,{}以键值对的形式存储数据。

    # dic={'name':'Laonanhai',

    #      'age':45,

    #      'name_list':['反面教材','俊俊',....]

    #      }

    # 以key:value形式,映射,存储的大量的关系型数据。

    # 数据类型的分类:

    #        可变(不可哈希hash):list,dict,set,list=[11,222,333]

    #        不可变(可哈希hash):str,tuple,int,bool  name='alex'

    #        容器类:

    #            容器类的数据类型:list ,tuple, dict,  l1=[11,True,'alex',[22,33,44]]

    #            非容器类的数据类型:str ,int, bool.  s1='[11,22,33]'

    #        字典的key必须是不可变的数据类型,是唯一的,

    #                  hash算法:字典的键通过hash表转化成数字,采用二分查找查询数字

    #                        字典的value可以是任意数据类型

    #                        字典的查询速度非常快,存储的大量的关系型数据

    #                        字典在python3.5包含3.5之前都是无序,但3.6之后是有序的

    #键唯一

    # dic={

    #    'name':'alex',#当有两个的时候自动覆盖

    #    'name':'WuSir',

    # }

    # print(dic)

    #键必须是不可变的可哈希的数据类型

    # dic={'name':'老男孩','age':'56','hobby':'women'}

    #增

    # dic['sex']='LaddyBoy'

    # dic['name']='Alex'  #有则覆盖,没有就添加

    # dic.setdefault('sex','Laddyboy')  #有则不变,无则添加。

    # dic.setdefault('name','alex')

    # print(dic)

    #删

    # print(dic.pop('age'))  #有返回值,返回的是键对应的值

    # print(dic.pop('age1','没有此键....'))#可以对返回值进行重新赋值操作

    # print(dic)

    # dic.clear()#清空字典

    # print(dic)

    # print(dic.popitem())#随机删除,有返回值,返回值为元组,里面是 删除的键值对

    # print(dic)

    #del

    #1,删除整个字典

    # del dic    #删除以后的字典不存在,如果再次打印会报错

    # print(dic)

    #2,按照键删除键值对

    # del dic['name']

    # print(dic)

    #改

    # dic['name']='Alex'    #有则覆盖,没有就添加

    # #update  两个字典的更新

    # dic={'name':'jin','age':18,'sex':'male'}

    # dic2={'name':'alex','weight':75}

    # dic2.update(dic) #将dic里面的所有键值对,覆盖添加到dic2中,dic不变

    # print(dic)  #{'name': 'jin', 'age': 18, 'sex': 'male'}

    # print(dic2)  #{'age': 18, 'name': 'jin', 'weight': 75, 'sex': 'male'}

    #查

    #1,dic['name']

    # print(dic['name'])

    #

    # #2.dic.get('name')

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

    # print(dic.get('name1'))  #在使用get查询没有时会返回none 可以对他进行操作

    # print(dic.get('name1','sb没有此键'))

    #for循环查询

    #dic.key(),  dic.values(),  dic.items()  #类似于list但不是list的类型。

    # print(dic.keys(),type(dic.keys()))

    # for key in dic.keys():

    #    print(key)

    # l_key=list(dic.keys())

    # print(l_key)

    # for value in dic.values():

    #    print(value)

    # l_value=list(dic.values())

    # print(l_value)

    # print(dic.items())

    #分别赋值概念

    # a,b=1,2

    # c,d=('alex','34')

    # e,f=['alex','34']

    #有如下a=1  b=3,用一行代码将a,b值互换。

    # a=1

    # b=3

    # a,b=b,a

    # print(a,b)

    # print(dic.items())

    #

    # for i in [22,33,44]:

    #    print(i)

    # for i in [(11,22),(33,44),(55,66)]:

    #    print(i)

    # # k,v=('name','老男孩')

    # for k,v in dic.items():

    #    print(k,v)

    #字典的嵌套

    dic = {

        'name_list':['碗蓉','俊俊','爽妹'],

        'status':None,

        'personal_msg':{

            'name':'反面教材',

            'age':25,

            'hobby_list':['抽烟','喝酒','烫头'],

        }

    }

    # 1,给dic添加一个键值对,学校:老男孩

    # dic['学校']='老男孩'

    # print(dic)

    # 2,将status对应的值改成True

    #第一种方法:

    # dic3={'status':'True'}

    # dic.update(dic3)

    # #第二种方法:

    # # dic['status']='True'

    # print(dic)

    # 3,给name_list对应的列表追加一个元素:平平

    # dic['name_list'].append('平平')

    # print(dic)

    # 4,给personal_msg对应的字典添加一个键值对sex:男

    # dic['personal_msg']['esx']='男'

    # print(dic)

    # 5,将hobby_list 对应的列表中的烫头改成唱歌。

    dic['personal_msg']['hobby_list'][-1]='唱歌'

    print(dic)

    相关文章

      网友评论

        本文标题:Python字典的增删改查以及嵌套

        本文链接:https://www.haomeiwen.com/subject/adlglctx.html