zoukankan      html  css  js  c++  java
  • Python从入门到精通之Fifth!

    字典  类名:dict   字典是无序的。

    字典的创建  info = {"k1":{1:"abc",[1,2,3]},"k2":True},可以进行字典的嵌套,value可嵌套任意类型。

    列表不可以作为字典的key,元组可以,因为列表是动态的,可以修改,而元组不可以。布尔值会与1和0重复,则会不显示。

    #字典的取值
    info = {"k1":123,"k2":True,"k3":(12,"aaa",),"k4":"bbb"}
    v = info["k1"]
    print(v)  ========> 123
    n = info["k3"][0]
    print(n)  ========> 12

    字典的循环,可迭代对象

    info = {"k1":18,
              "k2":True,
               "k3":(11,22,33,44,)
               "k4":[11,[],(),{"kk3":(123,"asd",),"kk2":"vv2","kk1":""}]
             }
    #字典支持for循环,不支持while循环,因为key值是无序的。默认循环键keys,可通过values方法进行循环值
    for item in info.keys/values:
        print(item,info[item])
    #循环键值对的方法 .items()
    for k,v in info.items():
        print(k,v)

     字典的方法

    #清空字典clear
    字典名.clear() 
    
    #copy浅拷贝
    info ={"k1":18,
              "k2":True,
              "k3":(11,22,33,44,),
              "k4":[11,[],(),{"kk3":(123,"asd",),"kk2":"vv2","kk1":""}]
             }
    n = info.copy()
    
    ########静态方法########  支持dict(类名).方法名
    #fromkeys()更具序列,创建字典,并指定统一的key值
    
    v = dict.frokeys(["k1",123,"999"])
    print(v)    =========>{123:None,'k1':None,'999':None}
    a = dict.fromkeys(["k1",123,"999"],123)
    print(v)    =========>{123:123,'k1':123,'999':123}
    
    注意:静态方法  支持dict(类名).方法名

    一般的取值时如果字典中不存在所取的key键,那么取值会报错,但是使用get方法不会。

    #get根据key获取值,key不存在时,默认取值None,或者设置其他。
    dic = {"k2":123}
    v = dic.get("k1",1111)
    print(v)     ======>1111
    #pop() 方法删除字典给定键 key 所对应的值,返回值为被删除的值。key值必须给出。 否则,返回default值。
    ####语法:pop(key[,default])#####
    dic = {
             'k1':'v1',
             'k2:'v2'
    }
    v = dic.pop("k1",111111)
    print(dic,v)      ======>{'k2':'v2'}111111
    
    #popitem()不加参数,随即删除一个键值对
     例如:dic.popitem()

    setdefault() 函数和get() 方法类似, 如果键不存在于字典中,将会添加键并将值设为默认值。

    setdefault()方法语法:dict.setdefault(key, default=None)

    #update更新  2种方式
    dic = {"k1":'v1',"k2":'v2'}
    方法1:dic.update("k1":123,"k3":'1111')
              print(dic)   ========>{"k3":'1111',"k1":123,"k2":'v2'}
    
    方法2:dic.update(k1=123,k3=345,k5="asdf")
              print(dic)   ========>{'k1':123,"k5":asdf,"k3":345,"k2:'v2'}

    重点:keys()  、valuses()  、  items()  、get() 、 update()

    *****************************************整理前5节必会*******************************************

    1.数字     int()

    2.字符串     replace、find、join、strip、startswith、split、upper、lower、format、

    #format常用方法,注意使用字典样式前面要加上**
    tempalte = "i am {name},age:{age}"
    v1 = tempalte.format(name="alex",age="18")
    v2 = tempalte.format(**{"name":'hex',"age":19})
    print(v1,v2)
    =======>i am alex,age:18    i am hex,age:19

    3.列表      append、extend、insert    索引、切片、循环

    4. 元组        一级元素不能修改,索引、切片、循环

    5.字典      keys()  、valuses()  、  items()  、get() 、 update()

    6.布尔值 0  1

    bool()转换为布尔值      None   ""   ()     []    {}    0   ======>False    其余都是真

  • 相关阅读:
    操作系统(32-45)
    异或运算( ^ )
    计算机网络(16—30)
    操作系统(13-30)
    win7 linux双系统删除linux
    ubuntu安装matplotlib包
    vmware+CentOS 7 无法上网
    Python命令行清屏的简单办法
    jupyter notebook 工作目录修改
    ipython notebook设置工作路径和自动保存.py文件 ipython_notebook_config.py
  • 原文地址:https://www.cnblogs.com/xtznb/p/10381099.html
Copyright © 2011-2022 走看看