python3字典取值

 2025-09-16  阅读 47  评论 0

摘要:在 Python3 中,字典(`dict`)是一种常用的数据结构,用于存储键值对。以下是字典取值的几种常用方法及示例:
1. 直接使用方括号 `[]` 取值
语法:`dict[key]`
特点:

在 Python3 中,字典(`dict`)是一种常用的数据结构,用于存储键值对。以下是字典取值的几种常用方法及示例:

python3字典取值

1. 直接使用方括号 `[]` 取值

  • 语法:`dict[key]`
  • 特点:若键存在则返回值,否则抛出 `KeyError` 异常。
  • 示例
  • python

    d = {'name': 'Alice', 'age': 30}

    print(d['name']) 输出:Alice

    print(d['address']) KeyError: 'address'

    2. 使用 `get` 方法

  • 语法:`dict.get(key, default=None)`
  • 特点:键存在时返回值,否则返回默认值(默认为 `None`)。
  • 示例
  • python

    value = d.get('address', '未知')

    print(value) 输出:未知(键不存在时返回默认值)

    3. 检查键是否存在(`in` 关键字)

  • 语法:`if key in dict`
  • 特点:先检查键是否存在,再决定是否取值。
  • 示例
  • python

    if 'age' in d:

    print(d['age']) 输出:30

    4. 异常处理(`try-except`)

  • 语法:捕获 `KeyError` 异常。
  • 特点:避免程序因键不存在而崩溃。
  • 示例
  • python

    try:

    value = d['address']

    except KeyError:

    value = '默认值'

    print(value) 输出:默认值

    5. 使用 `setdefault` 方法

  • 语法:`dict.setdefault(key, default)`
  • 特点:键存在时返回对应值;不存在时设置默认值并返回。
  • 示例
  • python

    value = d.setdefault('address', '默认地址')

    print(value) 输出:默认地址(键不存在时设置并返回)

    print(d) {'name': 'Alice', 'age': 30, 'address': '默认地址'}

    6. 嵌套字典取值

  • 方法:结合 `get` 逐层处理,避免中间键缺失导致错误。
  • 示例
  • python

    d = {'person': {'name': 'Bob', 'age': 25}}

    city = d.get('person', {}).get('address', {}).get('city', '未知')

    print(city) 输出:未知(安理多层嵌套)

    | 方法 | 适用场景 | 键不存在时的表现 |

    ||||

    | `dict[key]` | 确保键存在时快速取值 | 抛出 `KeyError` |

    | `get` | 需要默认值的场景 | 返回默认值 |

    | `in` 检查 | 需要先判断键是否存在 | 无操作,通过逻辑分支处理 |

    | `try-except` | 处理可能出现的异常 | 捕获异常并处理 |

    | `setdefault` | 键不存在时需设置默认值并返回 | 添加键值对后返回默认值 |

    根据具体场景选择合适的方法,确保代码的健壮性和可读性。

    版权声明: 知妳网保留所有权利,部分内容为网络收集,如有侵权,请联系QQ793061840删除,添加请注明来意。

    原文链接:https://www.6g9.cn/bkkp/dd71cAz5XU1FXBA.html

    发表评论:

    关于我们
    知妳网是一个专注于知识成长与生活品质的温暖社区,致力于提供情感共鸣、实用资讯与贴心服务。在这里,妳可以找到相关的知识、专业的建议,以及提升自我的优质内容。无论是职场困惑、情感心事,还是时尚美妆、健康生活,知妳网都能精准匹配妳的需求,陪伴妳的每一步成长。因为懂妳,所以更贴心——知妳网,做妳最知心的伙伴!
    联系方式
    电话:
    地址:广东省中山市
    Email:admin@qq.com

    Copyright © 2022 知妳网 Inc. 保留所有权利。 Powered by

    页面耗时0.1003秒, 内存占用1.7 MB, 访问数据库21次