zoukankan      html  css  js  c++  java
  • 基础数据类型(三)——字典常见操作

    # 字典
    # 字典的value可以是任何值
    # 字典的key为不可变类型,例如整型、字符串、元组均可(因为字典是以hash方式存储在内存中;吧key的hash值存在内存中,value直接存储
    # 若字典的key值相同,只保留一个value值
    # 字典是无序的,只能通过key值获取value
    di = {'name':'lwj', 'age':19}
    di_2 = {
        'k1':'v1',
        'k2':'v2',
        1:'v3',
        ('a', 'b',):8,
        'k5':[
            'a1',
            'a2',
            {
                'kk1':'a11',
                'kk2':9,
                'kk3':(1, 2, 'a', 'b',)
            }
        ]
    }
    
    # 获取kk2的值9
    print(di_2['k5'][2]['kk2'])
    
    # 字典循环,默认使用的是字典的key值
    for k in di.keys():
        print(k)
        print('获取key值')
    for k in di:
        print(k)
        print('默认是key值')
    
    for v in di.values():
        print(v)
        print('获取value值')
    
    for k, v in di.items():
        print(k, v)
        print('获取key:value值')
    
    
    # 根据序列创建字典,可设置字典的value值
    d = dict.fromkeys(['k1', 'k2', 'abc'],123)
    print(d) #结果为{'k1': 123, 'k2': 123, 'abc': 123}
    
    print(dict.fromkeys('abcd', 123)) #结果为{'a': 123, 'b': 123, 'c': 123, 'd': 123}
    
    # 获取可设置默认value值的字典key
    v = d.get('k1')
    print(v) #此时k1是存在的,这样或获取123结果
    v1 = d.get('k3')
    print(v1) #此时k3是不存在,这样获取的value值为None
    v2 = d.get('k3','abcd')
    print(v2) #此时k3是不存在,这样获取的value值为默认值'abcd'
    
    
    d = {'a': 123, 'b': 123, 'c': 123, 'd': 123}
    m = d.pop('a') # 这样会删除key对应的value→123
    print(d, m) #得到结果{'b': 123, 'c': 123, 'd': 123} 123
    
    # 若删除的键值不存在,删除key值之后可以设置默认的返回值
    d = {'a': 123, 'b': 123, 'c': 123, 'd': 123}
    m = d.pop('e','abcd') #此时删除的'e'不存在,无法删除,但是可以返回默认的value值为'abcd'
    print(d, m) #结果为
    
    # popitem() #随机删除字典的key以及对应的value值,可直接获取删除的内容
    d = {'a': 123, 'b': 123, 'c': 123, 'd': 123}
    k,v = d.popitem()
    print(d, k, v)
    
    
    # setdefault('e', 1234) # 设置key对应的值,如果key不存在则加入到字典中,若存在,则获取key当前的value值
    d = {'a': 123, 'b': 123, 'c': 123, 'd': 123}
    v = d.setdefault('e', 1234)
    print(d, v) #结果为{'a': 123, 'b': 123, 'c': 123, 'd': 123, 'e': 1234} 1234
    v = d.setdefault('a', 1234)
    print(d, v) #结果为{'a': 123, 'b': 123, 'c': 123, 'd': 123, 'e': 1234} 123
    
    
    # update() #字典的两种更新方法
    d = {'a': 123, 'b': 123, 'c': 123, 'd': 123}
    d.update(a='abc', e='eee')
    d.update({'b':222, 'f':'fff'})
  • 相关阅读:
    每日一博文
    用flash builder创建手机项目以及发布app需要注意的细节
    用xml配置加载cs中为ActionScript导出的类
    cs里面层,帧的处理方法
    一个项目要被自己加载的swf的项目调用方法
    App调用Android设备本地相机拍照并保存到本地相册
    让SWF文件从原始保存位置拿出来到任意位置都可以播放的设置
    记事
    一个主项目调用被加载的小游戏SWF项目的方法
    从一个App退出,关闭app
  • 原文地址:https://www.cnblogs.com/wjlv/p/10816736.html
Copyright © 2011-2022 走看看