• Python学习之字典


    字典:Python中字典是一种key-value的数据类型,就像新华字典那样,可以根据笔划,字母来查找对应的内容。

    定义语法:

    dict = {
        'num1101':"Alice",
        'num1102':"Alen",
        'num1103':"Alex",
        'num1104':"BOb",
        'num1105':"Linda",
    }
    

    字典的特性:

    • 无序
    • key必须唯一,所以字典天生去重,不存在重复元素

    字典操作

    增加

    dict = {
        'num1101':"Alice",
        'num1102':"Alen",
        'num1103':"Alex",
        'num1104':"BOb",
        'num1105':"Linda",
    }
    print(dict)
    dict["num1106"] = "June这里是新元素"
    print(dict)
    

    在这里插入图片描述

    删除

    dict.pop("num1101")  #标准删除方法
    del dict["num1102"]  #删除指定元素
    dict.popitem()       #删除最后一个元素
    print(dict)
    

    在这里插入图片描述

    修改

    dict['num1101'] = "爱丽丝"
    

    查找

    dict = {
        'num1101':"Alice",
        'num1102':"Alen",
        'num1103':"Alex",
        'num1104':"BOb",
        'num1105':"Linda",
    }
    print("num1103" in dict)        #返回检索的元素是否存在,Trur,false
    print(dict.get("num1105"))      #返回对应的值
    print(dict["num1104"])          #如检索值不存在会报错
    print(dict["num1109"])
    
    #输出如下:
    True
    Traceback (most recent call last):
    Linda
      File "/home/cc/mycode/day3/dict.py", line 11, in <module>
    BOb
        print(dict["num1109"])
    KeyError: 'num1109'
    
    Process finished with exit code 1
    

    多级字典嵌套

    多级字典嵌套即在字典中定义字典;

    book = {
        "学习工具":{
            "1001":["百科全书"],
            "1002": ["英汉互译"],
            "1003": ["Python入门"],
        },
        "小说":{
            "1101":["解忧杂货店"],
            "1102": ["好吗好的"],
            "1103": ["百年孤独"],
        },
        "名著":{
            "1201":["西游记","红楼梦"],
        }
    }
    book["学习工具"]["1003"][0] += ",学习Python的好帮手"
    print(book["学习工具"]["1003"]) 
    

    在这里插入图片描述

    其他操作

    values

    dict = {
        'num1101':"Alice",
        'num1102':"Alen",
        'num1103':"Alex",
        'num1104':"BOb",
        'num1105':"Linda",
    }
    
    print(dict.values())
    输出:dict_values(['Alice', 'Alen', 'Alex', 'BOb', 'Linda'])
    

    keys

    dict = {
        'num1101':"Alice",
        'num1102':"Alen",
        'num1103':"Alex",
        'num1104':"BOb",
        'num1105':"Linda",
    }
    print(dict.keys())
    
    输出:dict_keys(['num1101', 'num1102', 'num1103', 'num1104', 'num1105'])
    
    

    setdefault

    dict = {
        'num1101':"Alice",
        'num1102':"Alen",
        'num1103':"Alex",
        'num1104':"BOb",
        'num1105':"Linda",
    }
    
    dict.setdefault("num1106","Jane")            #检索后不存在该元素,添加进字典
    dict.setdefault("num1101","爱丽丝")           #检索后存在该元素,字典内容不变
    print(dict)
    
    

    输出应为:{‘num1101’: ‘Alice’, ‘num1102’: ‘Alen’, ‘num1103’: ‘Alex’, ‘num1104’: ‘BOb’, ‘num1105’: ‘Linda’, ‘num1106’: ‘Jane’}

    update

    dict = {
        'num1101':"Alice",
        'num1102':"Alen",
        'num1103':"Alex",
        'num1104':"BOb",
        'num1105':"Linda",
    }
    
    name = {
        1:2,"num1105":"Linda",3:4
    }
    
    dict.update(name)
    print(dict)
    {'num1101': 'Alice', 'num1102': 'Alen', 'num1103': 'Alex', 'num1104': 'BOb', 'num1105': 'Linda', 1: 2, 3: 4}
    

    items

    循环

  • 相关阅读:
    localStorage和sessionStorage区别(包括同源的定义)
    跨域问题实践总结! 上(JSONP/document.domain/window.name)
    7月11日计划
    图形验证码知识点整理 Object.prototype.toString.call()等
    学习日报 7-10(验证码)
    Mysql安装与主从配置
    windows service编程
    Entity Framework——常见报错总结
    Entity Framework——读写分离
    Entity Framework——执行sql语句
  • 原文地址:https://www.cnblogs.com/candlia/p/11919619.html
Copyright © 2020-2023  润新知