zoukankan      html  css  js  c++  java
  • Python学习笔记:dictionary字典类型所有方法汇总

    ############################

    红色为常用重点方法

    ############################

    dic = {
    "1": [1, 2, 3],
    "2": [2, 3, 4]
    }

    ##### 增 ##########
    dic["3"] = [1, 2, 3, 4] # 键存在就修改,不存在则是增加新的键值对
    print(dic)
    print(dic.setdefault("4", ["ni hao ", "zhongguoren1"])) # 键存在就修改,不存在则是增加新的键值对,并且返回这个值,这样确保一定有值存在
    print(dic)


    print("新创造一个字典1", dict.fromkeys([11, 12, 13], "test")) # 初始化一个新的字典,和具体对象dic没有关系,相当于一个字典类静态方法,
    dic1 = dict.fromkeys([11, 12, 13], ["1", "2", "3"])# 注意:这里是浅复制,值里面如果有列表或别的字典,那么共享一个内存空间,修改一个就全部修改
    print("新创造一个字典2", dic1)

    dic1[11][0] = "1000"
    print("因为内存共享修改值后,全部字典值都修改了", dic1)


    ##### 删 ##########
    del dic["1"] # 这是一个python通用的方法,不是字典专用的
    print("删除1", dic)
    dic.pop("2") # 删除指定的一个值,如果键不存在会报错
    print("删除2", dic)
    dic.popitem() # 随机删除一个,不要随便使用
    print("随机删除", dic)



    ##### 改 ##########
    dic["3"] = [1, 2, 3, 6] # 键存在就修改,不存在则是增加新的键值对
    print(dic)
    print(dic.setdefault("4", ["ni hao ", "zhongguoren1"])) # 键存在就修改,不存在则是增加新的键值对,并且返回这个值,这样确保能有值存在
    print("更新前的字典", dic)
    dic.update({"3": "hahah ", "1": ["tw", "cyd"], "101": ["nihao", "world"]}) # 已经存在则更新,不存在则新增,这个方法很赞
    print("更新过的字典", dic)

    ##### 查 ##########
    print(dic["3"]) # 这种查找的方法,如果键不存在会报错
    print(dic.get("100")) # 这种查找的方法,如果键不存在不会报错
    print("100" in dic) # 判断一个键是否存在 相当于 "100" in keys (反之用not in)
    print(dic.values()) # 打印所有的值
    print(dic.keys()) # 打印所有的键
    print(dic.items()) # 打印所有的键值对

    print("简单循环,不需要转dic.items()先转列表,所以很高效,推荐!")
    for i in dic:
    print(i, dic[i])
    print("复杂循环,需要转列表,效率慢一些,不推荐!")
    for k, v in dic.items():
    print(k, v)
  • 相关阅读:
    原 java调整数据顺序是奇数位于偶数的前面(思路与实现)
    队列和栈是什么,列出它们的区别?
    python 虚拟环境创建
    系统架构知识
    Git 管理代码
    继承类构造方法使用
    if __name__=="__main__"
    django 项目创建
    python unittest的使用
    python ddt/paramunittest的使用
  • 原文地址:https://www.cnblogs.com/tangwei-fuzhou/p/12636445.html
Copyright © 2011-2022 走看看