zoukankan      html  css  js  c++  java
  • 2018.8.1笔记(字典的增删改查,操作,嵌套,)

    一. 字典(字典在遍历时不能修改)

    dict 用{}来表示 键值对数据 {key:value} 唯一性

    键 都必须是可哈希的 不可变的数据类型就可以当做字典中的键

    值 没有任何限制


    二.字典的增删改查
    1.增加
    (1) dic[key] = value #强制增加

    dic.setdefault(key,value) 如果键在字典中存在不进行任何操作,否则就添加

    可以通过key查询,没有这个key返回None
    例题:
    dic = {'易大师':'剑圣','剑豪':'托儿所','草丛伦':'大宝剑'}
    dic['火女'] = '人头狗'   # 新增
    print(dic)
    dic.setdefault('火女','安妮')     # 如果在字典中存在就不进行任何操作,不存在就进行添加
    dic.setdefault('火女','火男')
    2.删除 
    pop(key) 有返回值 返回的是被删除value
    del dic[key]
    popitem() 随机删除
    clear() 清空字典
    例题:
    dic = {'易大师':'剑圣','剑豪':'托儿所','草丛伦':'大宝剑'}
    ret = dic.pop('易大师')  #通过key删除  返回被删除的value
    print(ret)
    del dic['剑豪']#del 在字典里只能删除一个 或删除表(del dic)
    dic.clear()   #清空字典 {}
    ret = dic.popitem()   #随机删除  返回值 一个元组  (key,value)
    print(ret)
    3.修改
    dic[key] = value #强制修改
    dic.update(字典)#更新
    例题:
    dic['剑豪'] = '哈莎阁'   # 强制修改
    dic1 = {'火女':'安妮','火男':'布兰德','维恩':'暗影猎手','剑豪':'哈莎阁'}
    dic1.update(dic)# 用dic 去更新dic1
    print(dic1)
    4.查询
    get(key)#没有这个键的时候查询会报错
    dic[key]#没有返回None 可以指定返回内容
    for 循环  元组  键  值   键值对
    setdefault(key)#没有返回None 可以指定返回内容
    例题:
    for i in  dic:
    print(i)     #for 循环默认是获取字典中的键
    print(dic['易大师父'])                   #查看1   没有这个键的时候查询会报错
    print(dic.get('易大师','你傻啊,没有!'))    #查看2   没有返回None 可以指定返回内容
    print(dic.setdefault('易大师范湖'))        #查看3    没有返回None
    三.字典的其他操作:

    keys 获取到所有的键存在一个高仿的列表中

    values 获取到所有的值存在一个高仿的列表中

    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)
    a,b  = 1, 2
    a,b  = (1,2)
    a,b  = [1,2]
    批量创建字典
    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)
  • 相关阅读:
    【python cookbook】【数据结构与算法】4.找到最大或最小的N个元素
    【python cookbook】【数据结构与算法】3.保存最后N个元素
    oracle sql语言模糊查询--通配符like的使用教程
    oracle decode处理被除数为0 的情况
    握草
    oracle if else 判断
    Procdure for wanfo business report
    [转]Oracle 阳历转农历
    阴阳历互相转换方法
    [转]解决crystal report水晶报表在浏览器提示bobj未定义的错误
  • 原文地址:https://www.cnblogs.com/Bug66/p/9401612.html
Copyright © 2011-2022 走看看