zoukankan      html  css  js  c++  java
  • Python 基础第五天

    主要内容:

    1.字典的介绍

    2.字典的增删改查

    3.字典的嵌套

    1.介绍

    dic字典是python中唯一的映射类型.key-value

    用途:储存大量的数据,而是关系型数据,查询速度快

    dic = {

    #  key:value

      'name':'老男孩',
      'age':17,
      'name_list':[杰哥 民歌 花心哥 狗友 芳芳 恒富 ],
      1:True.
      .....

    }

    值可以对应任意类型,键不一定对应任意类型

    数据类型分类:
    可变数据类型(不可哈希):list,dict,set。
    不可变数据类型(可哈希):int,bool,str,tuple.
    字典的键:不可变数据类型。
    字典的值:任意数据类型。
    容器类型:
    容器类(承载各种数据类型):list,tuple,dict。.
    字典的键是唯一的。

    字典的顺序:

    3.5之前,字典是无序的。
    3.6开始,字典创建的时候,按照一定的顺序插入的数值,看起来是有序的。

    字典的增删改查

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

    1.增

    第一种:有则覆盖,无则添加

    dic['hobby'] = 'girl'

    print(dic)

    dic['name'] = 'alex'

    print(dic)

    第二种:setdefault 无则添加,有则不变

    dic.setdefault('键名','值')

    dic.setdefault('hobby') ==> 结果为None. 字典值的位置

    dic.setdefault('hobby','girl')===>结果:'hobby':'girl'

    dic.setdefault('name','ritian') ===>结果还是之前的

    *删

    pop  有返回值

    #删除存在的数据,默认没有返回值,添加也不会显示

    print(dic.pop('age'))  

    print(dic)

    #删除不存在的key,报错

    dic.pop('hobby')

    #删除不存在的key,添加返回值的时候,会显示当前的字典,不报错.

    li = dic.pop('age','没有数据')
    print(li) #显示添加的返回值,'没有数据'
    print(dic) #显示现在的字典  没有报错

    *clear 清空字典

    dic.clear() 

    *del 

    1.删除字典

    del dic 

    2.删除字典的键

    del dic['name']

    printe(dic)

    3.删除字典中不存在的键,报错

    del dic['name_list']

    printe(dic)

    *popitem  随机删除,有返回值

    l1 = dic.popitem()  3.6之前版本可以实现,3.6版本测试后,没有这个现象.
    print(l1) #查看返回值(删除的数据)
    print(dic)

    *第一种情况

    dic['name'] = '太白'

    printe(dic)

    *第二种,两个字典的改 update

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

    dic2 = {"name":"alex","weight":75}

    dic2.update(dic) #将dic键值对覆盖并添加到dic2

    print(dic2)

    *1.通过键查找

    print(dic['name'])

    print(dic['name1']) #没有此键,报错

    *2.get()

    print(dic.get('name'))

    print(dic.get('name1'))  # 默认返回None

    print(dic.get('name1','没有此键值对'))  #返回值为填入的数据 '没有此键值对'

    *3.其他方法

    key()  values()  items()

    key() #把dic中所有的键放在一个列表里

    values()#把dic中所有的值放在一个列表里

    items()#把dic中每一对的键值放在元组里,然后在把元组放在一个列表里

    *可以通过上述方法,把dic--->list 

    print(list(dic.keys()))

    print(dic.keys(),type(dic.keys())) #查看此字典内的所有键,并查看键的类型

    结果:dict_keys(['name_list', 'dic2', 'name', 'hobby']) <class 'dict_keys'>

    例:

    for i in dic.keys():
    print(i)

    for i in dic:
    print(i)

    两个得到的结果相同,都是遍历dic中key值

    print(dic.values())  #获取字典中的值

    for i in dic.values():

     print(i)

    print(dic.items()) #获取键值对

    分别赋值的概念,即同时创建两个变量进行赋值

    例1

    a,b = 2,3

    print(a,b)

    例2

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

     

  • 相关阅读:
    人口数据分析
    爬虫:单线程+多任务异步协程
    Python脚本实现在cmd执行相关命令
    Markdown 标记语言指北
    索引/代码块目录
    无题
    [模板] 斯坦纳树
    [模板] 欧拉回路
    [模板] 计算几何2: 自适应Simpson/凸包/半平面交/旋转卡壳/闵可夫斯基和
    [模板] 快速沃尔什变换
  • 原文地址:https://www.cnblogs.com/tom2ling/p/8625599.html
Copyright © 2011-2022 走看看