zoukankan      html  css  js  c++  java
  • python' s fifth day for me dict

    字典 dict :

          key--vlaue

          储存大量的数据,而且是关系型数据,查询速度快(二分查询)

    数据类型分类:

          可变数据类型(不可哈希):list(列表) , dict(字典), set(集合)

          不可变数据类型(可哈希):int(整型), bool(布尔型), str(字符串), tuple(元组)

              字典的键: 不可变数据类型。

              字典的值: 任意数据类型。

          容器类型:

              容器类(承载各种数据类型):list , tuple , dict

    字典的键是唯一的。

    字典的顺序:

          3.5之前,字典是无序的。

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

    字典的  增 删 改 查

       增

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

    1 dic = {
    2     'name':'顾清秋',
    3     'age':'17',
    4     'hobby':'Msusic'
    5        }
    6 print(dic)
    7 dic['name'] = '懒笨呆'
    8 dic['addr'] = '学校'
    9 print(dic)

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

    1 dic = {
    2     'name':'顾清秋',
    3     'age':'17',
    4     'hobby':'Msusic'
    5        }
    6 print(dic)
    7 dic.setdefault('name','懒笨呆')
    8 dic.setdefault('addr','学校')
    9 print(dic)

        删   pop(key)  有返回值,如果删除的是不存在的键会报错,所以一般自定义返回内容

    一般定义为None. pop(key,None)

    1 dic = {
    2     'name':'顾清秋',
    3     'age':'17',
    4     'hobby':'Msusic'
    5        }
    6 print(dic.pop('hobby'))
    7 print(dic.pop('addr',None))
    8 print(dic)

          clear  清空字典内容,且保存空字典。

    1 dic = {
    2     'name':'顾清秋',
    3     'age':'17',
    4     'hobby':'Msusic'
    5        }
    6 dic.clear()
    7 print(dic)

         del  删除字典或者指定键删除。

    1 dic = {
    2     'name':'顾清秋',
    3     'age':'17',
    4     'hobby':'Msusic'
    5        }
    6 # del dic
    7 # print(dic)
    8 del dic['name']
    9 print(dic)

         popitem    随机删除  返回删除的元组形式的键值对

    1 dic = {
    2     'name':'顾清秋',
    3     'age':'17',
    4     'hobby':'Msusic'
    5        }
    6 dic.popitem()
    7 print(dic)

       改

              第一种:直接对已有的键进行赋值。覆盖原有的value.

    1 dic = {
    2     'name':'顾清秋',
    3     'age':'17',
    4     'hobby':'Msusic'
    5        }
    6 dic['name'] = '懒笨呆'
    7 print(dic)

           第二种:update    两个字典(dic,dic2),dic.update(dic2) ,  dic2 不变。dic2 直接将 dic 中原有的键值对覆盖  并且将 dic2 多出来的键值对添加到 dic 中。

     1 dic = {
     2     'name':'顾清秋',
     3     'age':'17',
     4     'hobby':'Msusic'
     5        }
     6 dic2 = {
     7         'name':'懒笨呆',
     8         'addr':'学校'
     9        }
    10 dic.update(dic2)
    11 print(dic2)
    12 print(dic)

          查   dict [key]   如果key不存在,则会报错。

    1 dic = {
    2     'name':'顾清秋',
    3     'age':'17',
    4     'hobby':'Msusic'
    5        }
    6 print(dic['name'])
    7 print(dic['name1'])

             get(key)  有返回值,默认返回None,可以自定义返回值。get(key,'返回值')

    1 dic = {
    2     'name':'顾清秋',
    3     'age':'17',
    4     'hobby':'Msusic'
    5        }
    6 print(dic.get('name1'))
    7 print(dic.get('name1','没有此键值对'))

         values()   key()  items()  将字典转换成类似列表的类。

     1 dic = {
     2     'name':'顾清秋',
     3     'age':'17',
     4     'hobby':'Msusic'
     5        }
     6 # print(dic.values())
     7 # for i in dic.values():
     8 #     print(i)
     9 # print(dic.keys(),type(dic.keys()))
    10 # for i in dic.keys():
    11 #     print(i)
    12 print(dic.items(),type(dic.items()))
    13 for i in dic.items():
    14     print(i)

     特殊类型 dict 转换成 list

    1 dic = {
    2     'name':'顾清秋',
    3     'age':'17',
    4     'hobby':'Msusic'
    5        }
    6 print(dic.values())   #转化成类似于列表的特殊类型
    7 print(list(dic.keys()))  #特殊类型转换成列表

     概念: 分别赋值

    1 a,b = 2,3
    2 print(a,b)
    3 a,b = (2,3)
    4 print(a,b)
    5 a,b = [2,3]
    6 print(a,b)
  • 相关阅读:
    各个download文件说明
    网页中播放FLV文件的代码
    关于外部样式表中backgroundimage:url()的设置
    C# VS 2010创建、安装、调试 windows服务(windows service)
    HttpUtility.UrlEncode,Server.UrlEncode 的区别
    关于Coolite(EXT)问题之一
    Trace 日志文件
    document对象
    让IE6/IE7/IE8浏览器支持CSS3属性特效
    自定义URL Protocol Handler 呼出应用程序
  • 原文地址:https://www.cnblogs.com/stfei/p/8624082.html
Copyright © 2011-2022 走看看