使用默认值的 Python 嵌套字典查找

2023-11-27

>>> d2
{'egg': 3, 'ham': {'grill': 4, 'fry': 6, 'bake': 5}, 'spam': 2}
>>> d2.get('spamx',99)
99
>>> d2.get('ham')['fry']
6

我想获取火腿内部炸薯条的价值,如果没有,则获取价值,99 或 88 作为第二个示例。但如何呢?


d2.get('ham', {}).get('fry', 88)

在现实生活中我可能会把它分解成几个陈述。

ham = d2.get('ham', {})
fry = ham.get('fry', 88)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用默认值的 Python 嵌套字典查找 的相关文章

随机推荐

  • “BigInteger”的“bitCount()”和“bitLength()”有什么区别

    的描述位计数 and 位长度 相当神秘 公共整数bitCount 返回此 BigInteger 的二进制补码表示形式中与其符号位不同的位数 当在 BigIntegers 上实现位向量样式集时 此方法非常有用 返回 此 BigInteger
  • 在添加现有键的同时更新 python 字典?

    我正在寻找最有效和Pythonic 主要是有效 的方法来更新字典 但如果存在现有键 则保留旧值 例如 myDict1 1 3 2 3 2 1 2 3 1 myDict2 4 5 2 5 2 4 2 5 4 myDict1 update my
  • 在 jQuery 1.7 中取消选中复选框的正确方法是什么?

    我正在从 jQuery 1 5 1 升级 我已经阅读了使用 检查 复选框 在 1 6 中 的 新 方法 prop checked true 但是删除复选框的正确 首选方法是什么 这两种方法似乎都有效 someSelector removeP
  • 调试器中的 Step Into 和 Step Over 有什么区别

    我想调试 Java 程序的整个流程 我看到有几种选择stepping通过我的程序 有什么区别步入 and 跨过去 考虑以下带有当前指令指针的代码 接下来将执行的行 由 gt 在f x 线路输入g 被称为g 2 线路输入main public
  • RestSharp - 令牌身份验证

    我正在尝试发送带有令牌身份验证的 GET 请求 但收到未经授权的响应 如果我在邮递员上发送相同的请求 它就会起作用 这是我的代码 string url string Format 0 batchs MyUrl RestClient clie
  • 如何在rabbitmq中池化通道?

    我一直在尝试在线程之间共享连接 并仅在线程创建时打开通道 但经过更多研究后 我想我也想尝试connection pooling 我怎样才能在rabbitmq上做到这一点 或者这是我可以普遍应用的一般想法 我的目标是生成 X 个线程 然后让它
  • MongoDB 和 Java 驱动程序:查询中“忽略大小写”

    这是我现在使用的代码 如何添加 忽略大小写 属性 DBObject query new BasicDBObject prop value Thanks 当我遇到确切的问题时 我无法通过忽略大小写来查询 我最终复制了我想要搜索的值并将其标准化
  • 将事件侦听器作为 Class.prototype 函数删除

    我试图在我的项目中有一个基于 Class prototype 的类 但我没有内联函数 考虑到这个例子 不可能删除事件监听器myVideo我在课堂上拥有的视频对象 这是一个理论示例 而不是我的实际生产代码 var myClass functi
  • Android Studio Assistant:无法将客户端添加到您的 Firebase 项目

    当在 Android Studio 中使用新的 Firebase Assistant 添加新服务时 我收到此错误 Firebase 由于以下原因 无法将任何客户端添加到您的 Firebase 项目中 具有此包名称和 SHA1 的应用程序已连
  • Google Oauth 删除访问范围

    假设我有一个应用程序 并且我的应用程序已经运行多年 请求用户访问 相关应用程序请求的访问权限超出了所需的访问权限 或者应用程序已更改并且不再需要它所请求的某些范围 违规范围已被删除 因此不再提示新用户进行我们不需要的访问 然而 我们现在有许
  • 要求命令在 Snow Leopard 上的 bash irb 中不起作用

    我正在学习 Zed Shaw 的 艰难学习 Ruby 练习 25 http ruby learncodethehardway org ex25 html 当我导航到保存 ruby 文件 ex25 rb 的目录并启动 IRB 时 出现以下错误
  • 文本视图中的 Html 具有不同的粗体和斜体字体

    我正在尝试在TextView The TextView文本设置为textView1 setText Html fromHtml htmlText html 包含粗体和斜体跨度 现在 我购买了自定义字体 该字体附带 3 个不同的文件 ttf
  • 如何将架构和一些数据从 SQL Server 复制到另一个实例?

    我的产品使用 SQL Server 数据库 每个客户端在自己的 Intranet 上都有自己部署的实例 该数据库有大约 200 个表 其中大多数是只有几行的配置表 但也有一些事务数据表可能有几百万行 我经常需要解决客户的配置问题 因此我需要
  • 在 C++11 中处理零参数可变参数模板

    考虑以下人工示例 template
  • 在 Vim R 插件中禁用下划线“_”快捷方式插入“<-”[重复]

    这个问题在这里已经有答案了 默认情况下 Vim R plugin 插入 lt 每当我输入或粘贴下划线时 当我粘贴类似内容时 这会产生问题geom bar 这变成geom lt bar 有没有办法关闭这个捷径 我试着看看manual 向下滚动
  • 在哪里可以找到 C#/.NET NFS 实现?

    是否有任何实施NFS用 C 编写的协议或易于阅读的良好文档 以便我可以实现自己的协议 服务器和客户端都需要 但客户端不一定是C 一定有一些东西在那里 假设您没有将其视为一种学习体验 我会建议采用 C C 实现并通过 C CLI 包装它 然而
  • Scala 点语法(或缺乏)

    我正在翻阅这本精彩的书Scala 编程当我遇到一段对我来说没有意义的代码时 def above that Element Element val this1 this widen that width val that1 that wide
  • 如何为 API 级别低于 26 的 LocalDateTime 添加持续时间

    我正在开发 API 级别 19 KitKat 的应用程序 我有一个LocalDateTime对象和一个Duration目的 我需要添加这个Duration to LocalDateTime Android Studio 表明plus Tem
  • 列出文件夹中的所有文件以及子文件夹[重复]

    这个问题在这里已经有答案了 可能的重复 使用 Java 递归列出目录中的所有文件 我如何返回一个包含文件夹上所有文件以及子文件夹的文件数组 我的方法仅适用于文件夹 但不包含子文件夹 public File listf String dire
  • 使用默认值的 Python 嵌套字典查找

    gt gt gt d2 egg 3 ham grill 4 fry 6 bake 5 spam 2 gt gt gt d2 get spamx 99 99 gt gt gt d2 get ham fry 6 我想获取火腿内部炸薯条的价值 如