博客
关于我
Python-字典
阅读量:796 次
发布时间:2023-03-08

本文共 1741 字,大约阅读时间需要 5 分钟。

字典是Python中用来存储键值对的一种数据结构,通过键可以快速找到对应的值。它支持增删改查,并且可以用于嵌套存储复杂数据。

字典的定义

字典用大括号 {} 表示,键值对的形式为 key: value。例如:

d = {"北京": "首都", "sylar": "邱彦涛", "强强": "张强强"}

键可以是任意可哈希的类型(如字符串、整数),但不能是不可变的对象。字典不支持切片操作。

增删改查操作

增加

可以通过 dict[key] = value 来添加或修改键值对。如果键已存在,会执行修改操作;如果不存在,则创建新的键值对。例如:

d = {}d["jay"] = "周杰伦"  # 创建新键d["jay"] = "王力宏"  # 修改键值

使用 setdefault() 方法可以设置默认值:

d.setdefault("李嘉诚")  # 设置默认值为 Noned.setdefault("李嘉诚", "房地产")  # 设置默认值为 "房地产"

删除

  • pop(key):按键值删除并返回对应的值。如果键不存在,会抛出 KeyError。
    d = {"朱高炽": None, "朱元璋": "和尚", "诸葛亮": '不是个和尚'}ret = d.pop("朱棣")  # 返回 None
  • del d[key]:按键删除,不返回值。
  • clear():清空字典。
  • popitem():随机删除一个键值对,返回元组。可以用 a, b = d.popitem() 解构。
    d = {"朱高炽": None, "朱元璋": "和尚", "诸葛亮": '不是个和尚'}ret = d.popitem()  # 返回随机键值对

修改

可以通过直接赋值或 update() 方法更新字典。例如:

d = {"朱高炽": None, "朱元璋": "和尚", "诸葛亮": '不是个和尚'}d["朱高炽"] = "很胖的一个独眼龙"  # 修改键值d.update({"年轻": 18, "张无忌": "赵敏"})  # 更新多个键值

查找

使用 get(key) 方法按键查找,可以指定默认返回值。例如:

d = {"id": 123, "name": 'sylar', "age": 18}print(d.get("name"))  # 输出 'sylar'print(d.get("ok"))    # 输出 Noneprint(d.get("sylar", "牛B"))  # 输出 '牛B'

常用方法

  • keys():返回所有键的列表。
  • values():返回所有值的列表。
  • items():返回键值对的列表,形式为 (key, value)。
    d = {"id": 123, "name": 'sylar', "age": 18, "ok": "科比"}print(d.keys())  # dict_keys(['id', 'name', 'age', 'ok'])print(d.values())  # dict_values([123, 'sylar', 18, '科比'])print(d.items())  # dict_items([('id', 123), ('name', 'sylar'), ('age', 18), ('ok', '科比')])

字典嵌套

字典可以嵌套存储复杂数据。例如:

d = {    "name": "汪峰",    "age": 18,    "wife": {"name": '章子怡', "age": 28},    "children": ['第一个毛孩子', '第二个毛孩子'],    "desc": '峰哥不会告我吧. 没关系. 我想上头条的'}print(d.get("wife").get("name"))  # 输出 '章子怡'print(d.get("children"))  # 输出 ['第一个毛孩子', '第二个毛孩子']print(d.get("children")[1])  # 输出 '第二个毛孩子'

字典是处理数据的强大工具,熟练掌握字典的增删改查和嵌套使用,可以大大提升代码的可读性和效率。

转载地址:http://xzlfk.baihongyu.com/

你可能感兴趣的文章
Python处理数据方向之OpenCV
查看>>
python处理一亿条数据_Python数据分析实战(一)
查看>>
Python处理PDF神器:PyMuPDF的安装与使用
查看>>
Python处理Excel数据
查看>>
Python基础:集合与文件操作
查看>>
Python基础:搭建开发环境(1)
查看>>
PYTHON基础:如何阅读N个整数,直到#39;
查看>>
Python基础:11变量作用域和闭包
查看>>
Python基础: with模式和__enter__ 和 __exit__
查看>>
Python基础(7)--函数
查看>>
Python基础部分-while循环,格式化输出
查看>>
Python基础语法:顺序语句结构
查看>>
Python基础语法:理解代码与写代码
查看>>
Python基础语法:条件和分支
查看>>
Python基础语法:基本数据类型(数字类型和布尔类型)
查看>>
Python基础语法:基本数据类型(列表)
查看>>
Python基础语法:内置函数
查看>>
Python基础语法:你不得不知的几种变量类型
查看>>
Python基础语法教程,零基础入门到精通,看完这一篇就够了
查看>>
Python基础语法与执行脚本的3种方式
查看>>