学习内容:字典类型内置方法

字典类型内置方法

dict(掌握)

  1. 用途:存多个值,但每一个值都有一个key与之对应,key对值有描述功能。多用于存的值表示的是不同的状态时,例如存的值有姓名、年龄、身高、体重、爱好。

  2. 定义:{}内用逗号分隔开多个元素,每一个元素都是key:value的形式,value可以是任意数据类型,而key通常应该是字符串类型,但是key必须为不可变类型。

    dic = {'a':1,'b':2}
    print(f"dic:{dic}")
    
    
    dic:{'a': 1, 'b': 2}
    dic = dict(a=1,b=2,c=3)
    print(f'dic:{dic}')
    
    
    dic:{'a': 1, 'b': 2, 'c': 3}
    dic = {1:'j',2:'z',3:'d'}
    print(f'dic:{dic[1]}')
    print(f'dic:{dic[1]}')  
    # 无法区分dic是列表,还是字典,并且key不再具有描述信息
    
    
    dic:j
    dic:j
    dic = {[1,2]:'a',0:'b'}
    
    # 报错
  3. 常用操作+内置方法:常用操作和内置方法分为优先掌握(今天必须得记住)、需要掌握(一周内记住)两个部分。

优先掌握

  1. 按key存取值:可存可取

    dic = {1:'jin',2:'dnf',3:'lol'}
    print(f'dic[2]:{dic[2]}')
    print(f'dic[3]:{dic[3]}')
    
    
    dic[2]:dnf
    dic[3]:lol
  2. 长度len

    dic = {1:'jin',2:'dnf',3:'lol'}
    print(f'len(dic):{len(dic)}')
    
    
    len(dic):3
  3. 成员运算in和not in

    dic = {1:'jin',2:'dnf',3:'lol'}
    print(f'1 in dic:{1 in dic}')
    print(f"'jin' in dic:{'jin' in dic}")
    
    
    1 in dic:True
    'jin' in dic:False
  4. 删除del

    dic = {1:'jin',2:'dnf',3:'lol'}
    del dic[1]
    print(f'del.dic:{dic}')
    
    
    del.dic:{2: 'dnf', 3: 'lol'}
  5. 键keys()、值values()、键值对items()

    # 键keys()
    dic = {1:'jin',2:'dnf',3:'lol'}
    print(f'dic.keys():{dic.keys()}')
    
    
    dic.keys():dict_keys([1, 2, 3])
    # 值values()
    dic = {1:'jin',2:'dnf',3:'lol'}
    print(f'dic.values():{dic.values()}')
    
    
    dic.values():dict_values(['jin', 'dnf', 'lol'])
    # 键值对items()
    dic = {1:'jin',2:'dnf',3:'lol'}
    print(f'dic.items():{dic.items()}')
    
    
    dic.items():dict_items([(1, 'jin'), (2, 'dnf'), (3, 'lol')])
  6. 循环

    dic = {1:'jin',2:'dnf',3:'lol'}
    for k,v in dic.items() :
        print(f'k,v :{k,v}')
    
    
    k,v :(1, 'jin')
    k,v :(2, 'dnf')
    k,v :(3, 'lol')    

需要掌握

  1. get 输出对于键key中的值value,如果键不存在,返回None,不会报错;

    ​ 如果键不存在,可以给定默认值

    dic = {1:'jin',2:'dnf',3:'lol'}
    print(f'dic.get(2):{dic.get(2)}')
    print(f'dic.get(6):{dic.get(6)}')
    
    
    dic.get(2):dnf
    dic.get(6):None
  2. update 有就更新,没有则添加

    dic = {1:'jin',2:'dnf',3:'lol'}
    dic2 = {4:'wzry',3:'lol'}
    dic.update(dic2)
    print(f'dic.update(di2){dic}')
    
    
    dic.update(di2){1: 'jin', 2: 'dnf', 3: 'lol', 4: 'wzry'}
  3. fromkeys 默认把给定列表内的元素取出来当成key,然后使用一个默认value新建一个字典

    dic = dict.fromkeys(['a','b','c'],None)
    print(f'dic:{dic}')
    
    
    Process finished with exit code 0
  4. setdefault 如果字典中有该key的话,则key对应的值不变;如果没有,则增加

    dic = {'a': 1,'b': 2,'c': 3}
    print(f"dic.setedfault('a'):{dic.setdefault('a')}")
    print(f"dic.setdefault('d',3):{dic.setdefault('d',3)}")
    print(f"dic:{dic}")
    
    
    dic.setedfault('a'):1
    dic.setdefault('d',3):3
    dic:{'a': 1, 'b': 2, 'c': 3, 'd': 3}
  5. 存一个值or多个值:多个值,值可以是多个类型,key必须是不可变类型,通常应该是不可变类型中的字符串类型

  6. 有序or无序:无序
  7. 可变or不可变:可变数据类型

上一篇:使用pip或dnf在Fedora中安装python包?


下一篇:Centos7 离线安装dnf