数据类型之字典

字典:可以存放多个有明确意义的键值对

格式:

  •   
    # {key:value}
    #key 是不可变类型,且key是不能重复的
    #value 是可变类型,可以是任意数据类型

     

创建字典

  •   
    l = dict(x=1,y=2,z=3)
    print(l)
    #运行结果
    {'x': 1, 'y': 2, 'z': 3}
    
    info = [["name","nala"],("age",18)]
    d = {}
    for k,v in info:
        print({k,v})
    #运行结果
    {'name', 'nala'}
    {'age', 18}
    
    res = dict(info)
    print(res)
    #运行结果
    {'name': 'nala', 'age': 18}
    
    
    key = ["name","nala"]
    d = dict().fromkeys(key,None)
    print(d)
    #运行结果
    {'name': None, 'nala': None}

     

 

key取值:可存可取

  • 当key存在时,再赋值则是修改
  • 当key存在时,则创建新的值  

 

长度len:统计个可以是统计key,value,items

in 与 not in:根据key判断这个值是否存在字典中

删除:

  • del:数据删除后没有返回值
  • pop:根据key删除,则返回值为value
  • popitems:随机删除返回值是items(items是元组表示的,由key和value组成)
  • #del
    info = {'name': 'nala', 'age': 18}
    del info["name"]
    print(info)
    #运行结果
    {'age': 18}
    
    #pop
    info = {'name': 'nala', 'age': 18}
    info.pop("name")
    print(info)
    #运行结果
    {'age': 18}
    
    #popitme
    info = {'name': 'nala', 'age': 18}
    info.popitem()
    print(info)
    #运行结果
    {'name': 'nala'}

键,值,键值对:

  • key:键
  • value:值
  • items:键值对
  • l = {'name': 'nala',"age":600,"sex":"male"}
    for key in l:
        print(key)
    #运行结果
    name
    age
    sex
    
    for value in l.values():
        print(value)
    #运行结果
    nala
    600
    male
    
    for items in l.items():
        print(items)
    #运行结果
    ('name', 'nala')
    ('age', 600)
    ('sex', 'male')

     

     

内置方法:

clear:清除

update:更新

  •   
    l = {'name': 'nala',"age":600,"sex":"male"}
    l.update({'name': 'lisa',"age":18,"sex":"female"})
    print(l)
    
    #运行结果
    {'name': 'lisa', 'age': 18, 'sex': 'female'}

     

get:指定的键不存在返回None

  •   
    l = {'name': 'nala',"age":600,"sex":"male"}
    print(l.get("name1")) #没有找到name1
    print(l.get("name"))
    
    #运行结果
    None
    nala

     

setdefault:

  • 如果key存在于字典中,则不添加并且返回key的值
  • 如果key不存在于字典中,则会添加key并且返回key的值
  • l = {'name': 'nala',"age":600}
    print("age 键的值为 : %s" % l.setdefault('age', None))
    print("sex 键的值为 : %s" % l.setdefault('sex', None))
    
    # 运行结果
    age 键的值为 : 600
    sex 键的值为 : None

     

总结:

有序的类型为:列表,元组

可存多个值的类型为:列表,元组,字典

可变类型:列表,字典

不可变类型:元组

posted @ 2020-03-11 18:09  zhw_sylvia  阅读(245)  评论(0编辑  收藏  举报